summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
Commit message (Collapse)AuthorAgeFilesLines
...
* 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
* OpenCL: Do not force 64 bit floats for (embedded) targets with only 32bit ↵Pekka Jaaskelainen2013-12-181-2/+8
| | | | | | floats. llvm-svn: 197592
* 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
* Modules: Don't warn upon missing headers while reading the module map.Daniel Jasper2013-12-171-1/+5
| | | | | | | | | | | | | | | Instead, mark the module as unavailable so that clang errors as soon as someone tries to build this module. This works towards the long-term goal of not stat'ing the header files at all while reading the module map and instead read them only when the module is being built (there is a corresponding FIXME in parseHeaderDecl()). However, it seems non-trivial to get there and this unblock us and moves us into the right direction. Also changed the implementation to reuse the same DiagnosticsEngine. llvm-svn: 197485
* 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
* Stop crashing on empty asm input constraintsDuncan P. N. Exon Smith2013-12-161-0/+3
| | | | | | | | | | An empty string for an ASM input constraint is invalid, and will crash during clang CodeGen. Change TargetInfo::validateInputConstraint to reject an empty string. <rdar://problem/15552191> llvm-svn: 197362
* 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
* Every target sets DescriptionString. Assert that.Rafael Espindola2013-12-131-2/+1
| | | | llvm-svn: 197268
* 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
* [CMake] clang/lib: Satisfy dependencies to add *actually used* libraries on ↵NAKAMURA Takumi2013-12-091-1/+4
| | | | | | | | target_link_libraries() and LLVM_LINK_COMPONENTS. I will prune redundant dependencies later. llvm-svn: 196800
* 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
* Fix a tranche of comment, test and doc typosAlp Toker2013-12-051-1/+1
| | | | llvm-svn: 196510
* Add newline at eof.NAKAMURA Takumi2013-12-041-1/+1
| | | | llvm-svn: 196346
* 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
* Fix a typo: "SLocEnty" should read "SLocEntry".James Dennett2013-11-241-1/+1
| | | | llvm-svn: 195563
* 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
* Adding an assert to help catch possible buffer underruns.Aaron Ballman2013-11-181-0/+4
| | | | llvm-svn: 195024
* R600: Add processor type for HawaiiTom Stellard2013-11-141-0/+1
| | | | llvm-svn: 194751
* Only provide MS builtins when -fms-extensions is onReid Kleckner2013-11-131-1/+4
| | | | | | | | | | | We already have builtins that are only available in GNU mode, so this mirrors that. Reviewers: rsmith Differential Revision: http://llvm-reviews.chandlerc.com/D2128 llvm-svn: 194615
* [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
* Remove C++11ism.Richard Smith2013-11-121-1/+1
| | | | llvm-svn: 194446
* Rather than duplicating extension diagnostics to allow them to cause aRichard Smith2013-11-121-20/+7
| | | | | | | | | | substitution failure, allow a flag to be set on the Diagnostic object, to mark it as 'causes substitution failure'. Refactor Diagnostic.td and the tablegen to use an enum for SFINAE behavior rather than a bunch of flags. llvm-svn: 194444
* [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
OpenPOWER on IntegriCloud