summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/Targets.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* [AArch64] Add some CPU targets for "generic", A-53 and A-57.Amara Emerson2013-10-311-0/+7
| | | | | | | | | | Enables the clang driver to begin targeting specific CPUs. Introduced a "generic" CPU which will ensure that the optional FP feature is enabled by default when it gets to LLVM, without needing any extra arguments. Cortex-A53 and A-57 are also introduced with tests, although backend handling of them does not yet exist. llvm-svn: 193740
* [mips] Delete unused functions.Akira Hatanaka2013-10-301-10/+0
| | | | llvm-svn: 193674
* [mips] Align the stack to 16-bytes for -mfp64.Akira Hatanaka2013-10-291-6/+27
| | | | llvm-svn: 193640
* [mips] Move setDescriptionString to base class MipsTargetInfoBase and call itAkira Hatanaka2013-10-291-21/+29
| | | | | | | | at the end of handleTargetFeatures. No intended functionality change. llvm-svn: 193636
* R600: Add Sea Islands GPUsTom Stellard2013-10-291-1/+6
| | | | llvm-svn: 193622
* ARM: Add -m[no-]crc to dis/enable CRC subtargetfeature from clangBernard Ogden2013-10-291-1/+7
| | | | | | | | Allow users to disable or enable CRC subtarget feature. Differential Revision: http://llvm-reviews.chandlerc.com/D2037 llvm-svn: 193600
* Add driver support for FP, SIMD and crypto defaults.Bernard Ogden2013-10-241-6/+13
| | | | | | | | | Although we wire up a bit for v8fp for macro setting purposes, we don't set a macro yet. Need to ask list about that. Change-Id: Ic9819593ce00882fbec72757ffccc6f0b18160a0 llvm-svn: 193367
* Clean up char/numeric comparisons in ARM getTargetDefinesBernard Ogden2013-10-241-6/+9
| | | | | Change-Id: Ie07228411b68252adcd5cf80b27ccd2eb3b031d9 llvm-svn: 193366
* Teach clang driver about Cortex-A53 and Cortex-A57.Bernard Ogden2013-10-241-1/+2
| | | | | | | | | | | Adds some Cortex-A53 strings where they were missing before. Cortex-A57 is entirely new to clang. Doesn't touch code only used by Darwin, in consequence of which one of the A53 lines has been removed. Change-Id: I5edb58f6eae93947334787e26a8772c736de6483 llvm-svn: 193364
* ARM-Darwin: Use the *-*-darwin-eabi triple for v6m & v7m archsTim Northover2013-10-241-1/+3
| | | | | | | These arch arguments are used for embedded targets (obviously) which need a different calling convention to iOS. llvm-svn: 193328
* Set the default hardware division features for ARM cpus. Also set it as ↵Silviu Baranga2013-10-211-2/+17
| | | | | | default for A32 armv8. llvm-svn: 193075
* Add the __ARM_ARCH_EXT_IDIV__ predefine. It is set to 1 if we have hardware ↵Silviu Baranga2013-10-211-0/+16
| | | | | | divide in the mode that we are compiling in (depending on the target features), not defined if we don't. Should be compatible with the GCC conterpart. Also adding a -hwdiv option to overide the default behavior. llvm-svn: 193074
* [Mips] Define __mips_fpr and _MIPS_FPSET macros.Simon Atanasyan2013-10-181-1/+11
| | | | llvm-svn: 192969
* Rename HandleTargetFeatures->handleTargetFeatures to matchEric Christopher2013-10-161-11/+11
| | | | | | everything else in the class. llvm-svn: 192851
* Add preprocessor support for powerpc vsx.Eric Christopher2013-10-161-2/+34
| | | | | | The test should be expanded upon for more powerpc checking. llvm-svn: 192849
* Fix comments.Eric Christopher2013-10-161-2/+2
| | | | llvm-svn: 192847
* Enabling 3DNow! prefetch instruction support for a few AMD processors in theYunzhong Gao2013-10-161-0/+11
| | | | | | | | | | clang front end. This change will allow the __PRFCHW__ macro to be set on these processors and hence include prfchwintrin.h in x86intrin.h header. Support for the intrinsic itself seems to have already been added in r178041. Differential Revision: http://llvm-reviews.chandlerc.com/D1934 llvm-svn: 192829
* Add support for -mcx16, and predefine __GCC_HAVE_SYNC_COMPARE_AND_SWAP_16 whenNick Lewycky2013-10-051-2/+25
| | | | | | it is enabled. Also enable it on the same architectures that GCC does. llvm-svn: 192045
* Fix PR 12730: Add _GCC_HAVE_SYNC_COMPARE_AND_SWAP macros for ARMWeiming Zhao2013-09-301-0/+7
| | | | llvm-svn: 191707
* Add character set related __STDC_* definitions.Ed Schouten2013-09-291-0/+5
| | | | | | | | | | | | | Clang uses UTF-16 and UTF-32 for its char16_t's and char32_t's exclusively. This means that we can define __STDC_UTF_16__ and __STDC_UTF_32__ unconditionally. While there, define __STDC_MB_MIGHT_NEQ_WC__ for FreeBSD. FreeBSD's wchar_t's don't encode characters as ISO-10646; the encoding depends on the locale used. Because the character set used might not be a superset of ASCII, we must define __STDC_MB_MIGHT_NEQ_WC__. llvm-svn: 191631
* Adding -mtbm and -mno-tbm command line options to the clang front end for theYunzhong Gao2013-09-241-2/+13
| | | | | | | | | x86 TBM instruction set. Also adding a __TBM__ macro if the TBM feature is enabled. Otherwise there should be no functionality change to existing features. Phabricator code review is located here: http://llvm-reviews.chandlerc.com/D1693 llvm-svn: 191326
* [Mips] Support -mnan=2008 option. Define "__mips_nan2008" macros and passSimon Atanasyan2013-09-241-3/+13
| | | | | | this option to the assembler. llvm-svn: 191282
* [Mips] Allocate NaClTargetInfo for MIPSEL NaClPetar Jovanovic2013-09-211-0/+2
| | | | | | | | A patch to AllocateTarget function to recognize llvm::Triple::NaCl for MIPSEL and return NaClTargetInfo. Additional test has been added to check if the expected macros get defined. llvm-svn: 191124
* Add C intrinsics for Intel SHA ExtensionsBen Langmuir2013-09-191-2/+16
| | | | | | | | | Intrinsics added shaintrin.h, which is included from x86intrin.h if __SHA__ is enabled. SHA implies SSE2, which is needed for the __m128i type. Also add the -msha/-mno-sha option. llvm-svn: 190999
* Use curly braces all the way through long if/else chain for consistency and ↵Craig Topper2013-09-191-14/+14
| | | | | | readability. llvm-svn: 190982
* Disabling sse2 should disable aes and pclmul support.Craig Topper2013-09-191-1/+1
| | | | llvm-svn: 190977
* [ARMv8] Add builtins for CRC instructions.Joey Gouly2013-09-181-0/+3
| | | | | | Patch by Bradley Smith! llvm-svn: 190931
* Push contents of X86TargetInfo::setFeatureEnabled down to a static function ↵Craig Topper2013-09-171-85/+89
| | | | | | called by the virtual version and all the places in getDefaultFeatures. This way getDefaultFeatures doesn't make so many virtual calls. llvm-svn: 190847
* Mark setSSELevel/setMMXLevel/setXOPLevel as static since they don't access ↵Craig Topper2013-09-171-9/+9
| | | | | | anything in the class. llvm-svn: 190846
* Add error checking to reject neon_vector_type attribute on targets without NEON.Amara Emerson2013-09-161-3/+1
| | | | | | Patch by Artyom Skrobov. llvm-svn: 190801
* Make F16C feature imply AVX. Matches GCC behavior.Craig Topper2013-09-161-1/+4
| | | | llvm-svn: 190776
* Clean up some Triple usage in clang.Cameron Esfahani2013-09-141-2/+2
| | | | llvm-svn: 190737
* Update Atom Silvermont (SLM) support by adding enabled features.Preston Gurd2013-09-131-5/+9
| | | | llvm-svn: 190718
* Add more Cortex CPUs and testsRenato Golin2013-09-131-4/+5
| | | | llvm-svn: 190703
OpenPOWER on IntegriCloud