| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds support for the z13 processor type and its vector facility,
and adds MC support for all new instructions provided by that facilily.
Apart from defining the new instructions, the main changes are:
- Adding VR128, VR64 and VR32 register classes.
- Making FP64 a subclass of VR64 and FP32 a subclass of VR32.
- Adding a D(V,B) addressing mode for scatter/gather operations
- Adding 1-, 2-, and 3-bit immediate operands for some 4-bit fields.
Until now all immediate operands have been the same width as the
underlying field (hence the assert->return change in decode[SU]ImmOperand).
In addition, sys::getHostCPUName is extended to detect running natively
on a z13 machine.
Based on a patch by Richard Sandiford.
llvm-svn: 236520
|
|
|
|
|
|
| |
supports AVX. getHostCPUFeatures should be used instead to determine whether to support AVX.
llvm-svn: 233674
|
|
|
|
|
|
| |
flags to guess what it might be.
llvm-svn: 233671
|
|
|
|
|
|
| |
support saving ymm state.
llvm-svn: 233518
|
|
|
|
|
|
| |
etc. Split Nehalem and Westmere CPUs.
llvm-svn: 233516
|
|
|
|
|
|
| |
Dothan based SOC.
llvm-svn: 233515
|
|
|
|
|
|
| |
processor.
llvm-svn: 233514
|
|
|
|
| |
llvm-svn: 233488
|
|
|
|
|
|
| |
Plan to use this as part of CPU 'native' support so we can stop picking a different CPU name if CPU doesn't support AVX or AVX2.
llvm-svn: 233487
|
|
|
|
| |
llvm-svn: 232929
|
|
|
|
|
|
| |
march=native.
llvm-svn: 232927
|
|
|
|
| |
llvm-svn: 229415
|
|
|
|
|
|
| |
Sorry for the noise, I have no idea how it survived to the final version.
llvm-svn: 224414
|
|
|
|
| |
llvm-svn: 224412
|
|
|
|
| |
llvm-svn: 224410
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Having two ways to do this doesn't seem terribly helpful and
consistently using the insert version (which we already has) seems like
it'll make the code easier to understand to anyone working with standard
data structures. (I also updated many references to the Entry's
key and value to use first() and second instead of getKey{Data,Length,}
and get/setValue - for similar consistency)
Also removes the GetOrCreateValue functions so there's less surface area
to StringMap to fix/improve/change/accommodate move semantics, etc.
llvm-svn: 222319
|
|
|
|
| |
llvm-svn: 211781
|
|
|
|
| |
llvm-svn: 211334
|
|
|
|
| |
llvm-svn: 209982
|
|
|
|
|
|
| |
headers
llvm-svn: 209506
|
|
|
|
| |
llvm-svn: 209420
|
|
|
|
|
|
|
|
|
|
| |
Tested that the right -target-cpu is set in the clang -cc1 command line
when running "clang -march=native -E -v - </dev/null" on both an FX-8150
and an FX-8350. Both are family 15h; the FX-8150 (Bulldozer processor)
reports a model number of 1, and the FX-8350 (Piledriver processor)
reports a model number of 2.
llvm-svn: 207973
|
|
|
|
|
|
| |
This is just bdver3 + AVX2 + BMI2.
llvm-svn: 207847
|
|
|
|
|
|
| |
and PPC, but not x86.
llvm-svn: 206830
|
|
|
|
|
|
|
| |
Recently, support for krait cpu was added. This commit extends getHostCPUName()
to return krait as cpu for the APQ8064 (a Krait 300).
llvm-svn: 197792
|
|
|
|
| |
llvm-svn: 197168
|
|
|
|
| |
llvm-svn: 197166
|
|
|
|
| |
llvm-svn: 197158
|
|
|
|
| |
llvm-svn: 195650
|
|
|
|
|
|
| |
Patch by Adam Strzelecki
llvm-svn: 195632
|
|
|
|
|
|
| |
This is just bdver2 + FSGSBase.
llvm-svn: 193984
|
|
|
|
|
|
|
|
|
|
| |
As on other hosts, the CPU identification instruction is priveleged,
so we need to look through /proc/cpuinfo. I copied the PowerPC way of
handling "generic".
Several tests were implicitly assuming z10 and so failed on z196.
llvm-svn: 193742
|
|
|
|
|
|
|
|
|
|
|
| |
Implements Instruction scheduler latencies for Silvermont,
using latencies from the Intel Silvermont Optimization Guide.
Auto detects SLM.
Turns on post RA scheduler when generating code for SLM.
llvm-svn: 190717
|
|
|
|
|
|
| |
Currently this is just the atom model with SSE4.2 enabled.
llvm-svn: 189669
|
|
|
|
|
|
|
| |
Clang doesn't support the MSVC __cpuid intrinsic yet, and fixing that is
blocked on some fairly complicated issues.
llvm-svn: 188584
|
|
|
|
|
|
| |
This works around PR16830 in LLVM when self-hosting clang on Windows.
llvm-svn: 188397
|
|
|
|
|
|
| |
PR16721.
llvm-svn: 187350
|
|
|
|
|
|
| |
Thomas B. Jablin, from PR16636.
llvm-svn: 186501
|
|
|
|
|
|
|
|
|
|
|
|
| |
For ARM on linux we use /proc/cpuinfo to detect the host CPU's features.
Linux derives these values without ever looking at the vendor of the
specific CPU implementation. Hence, it adds little value, if we parse
the output of /proc/cpuinfo only for certain vendors.
This patch enables us to derive the correct feature flags e.g. for Qualcomm
CPUs.
llvm-svn: 183790
|
|
|
|
|
|
|
|
|
|
|
| |
The intended semantics mirror autoconf, where the user is able to
specify a host triple, but if it's left to the build system then
"config.guess" is invoked for the default.
This also renames the LLVM_HOSTTRIPLE define to LLVM_HOST_TRIPLE to
fit in with the style of the surrounding defines.
llvm-svn: 181112
|
|
|
|
| |
llvm-svn: 181005
|
|
|
|
|
|
| |
because some MSVC 2010 SP1 installations do not have the _xgetbv intrinsic. Patch thanks to Serge Pavlov!
llvm-svn: 180125
|
|
|
|
| |
llvm-svn: 179995
|
|
|
|
| |
llvm-svn: 178674
|
|
|
|
|
|
| |
intrinsic. This also fixes a minor code formatting issue.
llvm-svn: 178666
|
|
|
|
|
|
| |
when getting the host processor information. It emits a .byte sequence on GNUC compilers to work around lack of xgetbv support with older assemblers, and resolves a comment typo found in the previous patch.
llvm-svn: 178636
|
|
|
|
|
|
| |
doesn't understand the xgetbv instruction for some reason. Will revisit when time permits.
llvm-svn: 178614
|
|
|
|
| |
llvm-svn: 178604
|
|
|
|
|
|
| |
when getting the host processor information.
llvm-svn: 178598
|
|
|
|
| |
llvm-svn: 176130
|