summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/Targets.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove support for armv7f slice. <rdar://problem/12478440>Bob Wilson2014-01-151-2/+1
| | | | | | This was never used for anything so we should just get rid of it. llvm-svn: 199336
* Ensure i686-nacl long long is aligned 8 bytes (like malign-double)Jan Wen Voung2014-01-151-0/+2
| | | | | | | Set NaCl OSTargetInfo to have LongLongAlign = 64. Otherwise, it will pick up the setting of 32 from X86_32TargetInfo. llvm-svn: 199335
* Remove the -cxx-abi command-line flag.Hans Wennborg2014-01-141-6/+0
| | | | | | | | | | | | | | | This makes the C++ ABI depend entirely on the target: MS ABI for -win32 triples, Itanium otherwise. It's no longer possible to do weird combinations. To be able to run a test with a specific ABI without constraining it to a specific triple, new substitutions are added to lit: %itanium_abi_triple and %ms_abi_triple can be used to get the current target triple adjusted to the desired ABI. For example, if the test suite is running with the i686-pc-win32 target, %itanium_abi_triple will expand to i686-pc-mingw32. Differential Revision: http://llvm-reviews.chandlerc.com/D2545 llvm-svn: 199250
* Hook up NetBSD/aarch64.Joerg Sonnenberger2014-01-131-0/+2
| | | | llvm-svn: 199124
* Use 'w' instead of 'c' to represent the win32 mangling.Rafael Espindola2014-01-101-2/+2
| | | | | | | This change was requested to avoid confusion if we ever support non windows coff systems. llvm-svn: 198939
* Update for llvm's DataLayout including mangling information.Rafael Espindola2014-01-031-38/+57
| | | | llvm-svn: 198439
* Reformat the description strings. No functionality change.Rafael Espindola2014-01-031-81/+33
| | | | llvm-svn: 198430
* Remove the now unused 's' specifications.Rafael Espindola2014-01-021-3/+3
| | | | llvm-svn: 198308
* Pass the aapcs and apcs features down to llvm.Rafael Espindola2014-01-021-0/+5
| | | | | | | No functionality change, but unblocks asserting that llvm's and clang's datalayout strings are the same. llvm-svn: 198306
* Small simplification: p0 is the same as p.Rafael Espindola2013-12-191-1/+1
| | | | llvm-svn: 197700
* Update SI datalayout for 32-bit private pointersMatt Arsenault2013-12-191-2/+1
| | | | llvm-svn: 197660
* On spacv8 f128 is only aligned to 64 bits.Rafael Espindola2013-12-191-3/+1
| | | | | | | | LLVM already got this right. Found on "Figure 3-1: Scalar Types" on http://sparc.com/standards/psABI3rd.pdf. llvm-svn: 197651
* Fix the DataLayout string produced by clang for NaCl.Rafael Espindola2013-12-181-1/+12
| | | | | | Reviewed by Derek Schuff. llvm-svn: 197628
* Make setABIAPCS and setABIAAPCS easier to reason about.Rafael Espindola2013-12-181-25/+39
| | | | | | | These functions now always set the same variables in the same order and they don't overlap with thep constructor. llvm-svn: 197604
* Split setABI in two helpers. No functionality change.Rafael Espindola2013-12-181-44/+50
| | | | llvm-svn: 197603
* Add -f64:32:64 to the darwin ppc32 DataLayout.Rafael Espindola2013-12-181-4/+2
| | | | | | A f64 inside a struct can be 32 bit aligned on darwin. llvm-svn: 197577
* Print the 'p' specification before the 'i' specification.Rafael Espindola2013-12-181-2/+1
| | | | | | No functionality change. llvm-svn: 197548
* Add a 's' specifications to AArch64.Rafael Espindola2013-12-171-3/+1
| | | | | | | | This has no functionality change as clang adds explicit alignment info for byval arguments. The only difference is that now the clang produced DataLayout string for AArch64 is identical to the LLVM produced one. llvm-svn: 197538
* Remove -f128:128 from the DataLayout strings. It is the default.Rafael Espindola2013-12-171-6/+6
| | | | llvm-svn: 197504
* The PS3 is a ppc64 and has 64 bit registers. Update DataLayout accordingly.Rafael Espindola2013-12-171-2/+1
| | | | llvm-svn: 197502
* Remove -f16:16:32 from the XCore DataLayout string.Rafael Espindola2013-12-171-1/+1
| | | | | | This makes it identical to the string llvm produces. llvm-svn: 197500
* Reorder these DataLayout entries to match the order LLVM uses.Rafael Espindola2013-12-171-9/+4
| | | | | | | This completes the cleanup/refactoring of DataLayout on the clang side. Next is figuring out the differences between the llvm and clang produced strings llvm-svn: 197442
* The preferred alignment defaults to the ABI one. Omit it if it is the same.Rafael Espindola2013-12-161-77/+77
| | | | llvm-svn: 197440
* Remove another default I missed before.Rafael Espindola2013-12-161-1/+1
| | | | llvm-svn: 197437
* Clang DataLayout string cleanup: don't print other defaults.Rafael Espindola2013-12-161-2/+2
| | | | | | I missed these in previous commits. llvm-svn: 197435
* Remove dead data.Rafael Espindola2013-12-161-1/+1
| | | | | | | The f80:128:128 was followed by a f80:32:32 and so never used. Looks like this was there since r91746. llvm-svn: 197433
* Clang DataLayout string cleanup: don't print the pointer defaults.Rafael Espindola2013-12-161-11/+11
| | | | llvm-svn: 197430
* Clang DataLayout string cleanup: don't print the aggregate defaults.Rafael Espindola2013-12-161-6/+6
| | | | llvm-svn: 197429
* Clang DataLayout string cleanup: don't print the vector defaults.Rafael Espindola2013-12-161-29/+29
| | | | llvm-svn: 197427
* Clang DataLayout string cleanup: don't print the FP defaults.Rafael Espindola2013-12-161-42/+42
| | | | llvm-svn: 197422
* Clang DataLayout string cleanup: don't print the integer defaults.Rafael Espindola2013-12-161-44/+44
| | | | llvm-svn: 197421
* Delete dead code.Rafael Espindola2013-12-151-2/+0
| | | | | | This is always overwritten by the one in NaClTargetInfo. llvm-svn: 197346
* Delete dead code.Rafael Espindola2013-12-131-17/+0
| | | | llvm-svn: 197270
* Use a: and s: instead of a0: and s0: in the DataLayout strings.Rafael Espindola2013-12-131-13/+13
| | | | | | They are equivalent and the size of 'a' and 's' is unused. llvm-svn: 197256
* ARM: teach Sema that "r" can match 64-bit valuesTim Northover2013-12-081-1/+1
| | | | | | | | We already support using "r" on 64-bit values (a GPRPair is allocated), but Sema doesn't know this yet so issues a warning. This should fix it. llvm-svn: 196724
* Added support for mcpu kraitAna Pazos2013-12-061-3/+5
| | | | | | | | | | | | - krait processor currently modeled with the same features as A9. - Krait processor additionally has VFP4 (fused multiply add/sub) and hardware division features enabled. - krait has currently the same Schedule model as A9 - krait cpu flag is not recognized by the GNU assembler yet, it is replaced with march=armv7-a to avoid a lower march from being used. llvm-svn: 196618
* Assume ARMv6 for NetBSD for now for strex/ldrex.Joerg Sonnenberger2013-12-021-0/+1
| | | | llvm-svn: 196115
* NetBSD uses long derived size_t / ssize_t in all ARM ABIs.Joerg Sonnenberger2013-12-021-2/+4
| | | | llvm-svn: 196114
* NetBSD uses signed wchar_t on ARM platforms.Joerg Sonnenberger2013-11-301-2/+9
| | | | llvm-svn: 195970
* Add support for Cortex-A12.Richard Barton2013-11-221-1/+1
| | | | | | Patch by Oliver Stannard! llvm-svn: 195449
* ARM: define & use __ARM_NEON on ARM32 (as per ACLE)Tim Northover2013-11-211-1/+3
| | | | | | | | | There seem to be quite a few references to the old macro __ARM_NEON__ on the internet, so I don't think it's a good idea to remove it entirely (at least yet), but the canonical name does not have the trailing underscores so we should use that ourselves. llvm-svn: 195353
* ARM: embedded v7 'darwin' doesn't get min-version defines.Jim Grosbach2013-11-191-27/+31
| | | | | | | | | Make sure armv7 doesn't get the iOS deployment version definitions when it's being used for non-iOS. rdar://15497681 llvm-svn: 195149
* Clean up predefined macros for AArch64 to follow ACLE 2.0.Jiangning Liu2013-11-191-12/+17
| | | | llvm-svn: 195068
* R600: Add processor type for HawaiiTom Stellard2013-11-141-0/+1
| | | | llvm-svn: 194751
* [mips][msa] Enable inlinse assembly for MSA.Daniel Sanders2013-11-121-2/+10
| | | | | | | | | | | | | | Like GCC, this re-uses the 'f' constraint and a new 'w' print-modifier: asm ("ldi.w %w0, 1", "=f"(result)); Unlike GCC, the 'w' print-modifer is not _required_ to produce the intended output. This is a consequence of differences in the internal handling of the registers in each compiler. To be source-compatible between the compilers, users must use the 'w' print-modifier. MSA registers (including control registers) are supported in clobber lists. llvm-svn: 194476
* XCore target Type defines.Robert Lytton2013-11-121-0/+5
| | | | | | | Change SizeType, PtrDiffType, IntPtrType, WCharType, WIntType to follow the XMOS llvm-gcc front end's settings. llvm-svn: 194461
* [mips] Partially revert r193640. Stack alignment should not be determined byAkira Hatanaka2013-11-111-12/+4
| | | | | | the floating point register mode. llvm-svn: 194426
* Darwin(ish): we don't want __ARM_EABI__ even on v7a embedded targets.Tim Northover2013-11-111-2/+2
| | | | llvm-svn: 194408
* NetBSD 6.99.26 switched to default rounding mode, so adjustJoerg Sonnenberger2013-11-111-1/+6
| | | | | | | __FLT_EVAL_METHOD__ accordingly. Add test case for this and the SSE2 variances on NetBSD. llvm-svn: 194377
* Driver: Add support for -march=bdver3 on x86.Benjamin Kramer2013-11-041-0/+7
| | | | llvm-svn: 193985
OpenPOWER on IntegriCloud