summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic/TargetInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
* The -fshort-wchar option causes wchar_t to become unsigned, in addition to beingChris Lattner2010-12-251-1/+1
| | | | | | | 16-bits in size. Implement this by splitting WChar into two enums, like we have for char. This fixes a miscompmilation of XULRunner, PR8856. llvm-svn: 122558
* Add missing standard includes. Patch by Joerg Sonnenberger!Nick Lewycky2010-12-191-0/+1
| | | | llvm-svn: 122194
* When setting a tied check if it's already tied. If it's tied to another ↵Anders Carlsson2010-11-031-0/+10
| | | | | | constraint it's invalid. Fixes PR3905. llvm-svn: 118146
* A number in an input constraint can't point to a read-write ('+') ↵Anders Carlsson2010-11-031-0/+4
| | | | | | constraint. Fixes PR3904. llvm-svn: 118145
* Fix Whitespace.Michael J. Spencer2010-10-181-7/+7
| | | | llvm-svn: 116699
* Fixed pr20314-2.c failure, added E, F, p constraint letters.John Thompson2010-09-211-0/+4
| | | | llvm-svn: 114490
* Added '|' delimiter to separate inline asm multiple alternative constraints ↵John Thompson2010-09-181-2/+1
| | | | | | for Clang side of support. llvm-svn: 114253
* Allow 'o' and 'V' as constraints for output asm operands.Dale Johannesen2010-09-071-3/+9
| | | | | | Allow '<' and '>' as constraints for input or output. llvm-svn: 113246
* The ARM C++ ABI is sufficiently different from the Itanium C++ ABI thatJohn McCall2010-08-211-0/+3
| | | | | | | it deserves its own enumerator. Obviously the implementations should closely follow the Itanium ABI except in cases of divergence. llvm-svn: 111749
* Fix oversight with symbolic names in TargetInfo::validateInputConstraint.Eli Friedman2010-08-111-0/+1
| | | | llvm-svn: 110870
* Fix for pr7869, inline asm mult-alt constraints.John Thompson2010-08-111-5/+3
| | | | llvm-svn: 110764
* Slightly revised handling of mult-alt constraints, to avoid an assert, until ↵John Thompson2010-08-101-4/+16
| | | | | | we have the full fix. llvm-svn: 110706
* CodeGen/ObjC/NeXT: Fix Obj-C message send to match llvm-gcc when choosingDaniel Dunbar2010-07-141-0/+3
| | | | | | | | whether to use objc_msgSend_fpret; the choice is target dependent, not Obj-C ABI dependent. - <rdar://problem/8139758> arm objc _objc_msgSend_fpret bug llvm-svn: 108379
* Hack for dealing with commas until we support multiple alternative ↵John Thompson2010-07-091-0/+4
| | | | | | constraints, per pr7338. llvm-svn: 108028
* Correctly align large arrays in x86-64. This fixes PR5599.Rafael Espindola2010-06-041-0/+2
| | | | llvm-svn: 105500
* Sema: Reject '#pragma options align=mac68k' everywhere except i386-apple-darwin.Daniel Dunbar2010-05-271-0/+1
| | | | llvm-svn: 104789
* david conrad points out that {|} in inline assembly on arm are not asmChris Lattner2010-04-231-0/+1
| | | | | | variants. This fixes neon inline asm which my patch for PR6780 broke. llvm-svn: 102181
* clang -cc1: Add a -fno-bitfield-type-align option, for my own testing purposes.Daniel Dunbar2010-04-151-2/+3
| | | | llvm-svn: 101370
* Tweak spelling (Bitfield -> BitField)Daniel Dunbar2010-04-151-1/+1
| | | | llvm-svn: 101369
* Add TargetInfo::useBitfieldTypeAlignment().Daniel Dunbar2010-04-151-3/+3
| | | | | | | | | | | | | | | - Used to determine whether the alignment of the type in a bit-field is respected when laying out structures. The default is true, targets can override this as needed. - This is designed to correspond to the PCC_BITFIELD_TYPE_MATTERS macro in gcc. The AST/Sema implementation only affects one line, unless I have forgotten something. I'd appreciate further review. - IRgen still needs to be updated to fully support this (which is effectively PR5591). llvm-svn: 101356
* Yay for more StringRefs.Anders Carlsson2010-01-301-18/+21
| | | | llvm-svn: 94917
* fix PR5689: add support for 'o' and 'V' asm input operandsNuno Lopes2009-12-161-0/+2
| | | | llvm-svn: 91540
* Add SigAtomicType to TargetInfo, Needed for MSP and PIC Targets, Credit to ↵Edward O'Callaghan2009-11-211-0/+1
| | | | | | Ken Dyck. llvm-svn: 89520
* do not store wchar/char16/char32/intmax width/alignment infoChris Lattner2009-11-121-5/+0
| | | | | | | into TargetInfo, just derive this based on the underlying type. This prevents them from getting out of synch, patch by Ken Dyck! llvm-svn: 86976
* teach the various targets what native integer types they have.Chris Lattner2009-11-071-1/+1
| | | | llvm-svn: 86395
* Eliminate tablsJohn Thompson2009-11-051-2/+2
| | | | llvm-svn: 86183
* clean up integer preprocessor type definitions, patch by Ken Dyck!Chris Lattner2009-11-051-4/+20
| | | | llvm-svn: 86177
* Adding -fshort-wchar option.John Thompson2009-11-051-0/+10
| | | | llvm-svn: 86167
* rename getTypeSigned() -> isTypeSigned() per daniel's review.Chris Lattner2009-10-251-2/+2
| | | | llvm-svn: 85076
* add helpful methods to TargetInfo for querying builtin integer type properties,Chris Lattner2009-10-211-0/+51
| | | | | | patch by Ken Dyck! llvm-svn: 84746
* hookize wint_t's definition, patch by Edward O'Callaghan (from PR5233).Chris Lattner2009-10-211-0/+1
| | | | llvm-svn: 84740
* fix PR4938 by recognizing % as a modifier on outputs,Chris Lattner2009-10-131-0/+3
| | | | | | previously we only recognized it on inputs. llvm-svn: 83939
* Remove tabs, and whitespace cleanups.Mike Stump2009-09-091-25/+25
| | | | llvm-svn: 81346
* Basic support for C++0x unicode types. Support for literals will follow in ↵Alisdair Meredith2009-07-141-0/+4
| | | | | | an incremental patch llvm-svn: 75622
* Fix for PR4192: fix the definition of int64_t on x86_64 Linux.Eli Friedman2009-07-011-0/+1
| | | | | | | | | | | | | Note that I'm guessing that *BSD and Solaris do the same thing as Linux here, but it's quite possible I'm wrong; if the following testcase gives an error on x86-64 with gcc for any of those operating systems, please tell me: #include <stdint.h> int64_t x; long x; llvm-svn: 74583
* Move CharIsSigned from TargetInfo to LangOptions.Eli Friedman2009-06-051-1/+0
| | | | llvm-svn: 72928
* Fix rdar://6860124 - invalid input constraint 'J' in asmChris Lattner2009-05-061-1/+9
| | | | | | | This recognizes all the target-independent constant constraints that have target-specific meanings. llvm-svn: 71064
* in a tied operand, don't copy over the name or constraint string, just the ↵Chris Lattner2009-04-261-2/+1
| | | | | | flags. llvm-svn: 70137
* pull operands names "[foo]" into ConstraintInfo.Chris Lattner2009-04-261-13/+7
| | | | llvm-svn: 70136
* pull the constraint string into the ConstraintInfo structChris Lattner2009-04-261-4/+5
| | | | | | instead of passing it around in addition to it. llvm-svn: 70135
* change TargetInfo::ConstraintInfo to be a struct that containsChris Lattner2009-04-261-23/+17
| | | | | | the enum along with some other data. llvm-svn: 70114
* Add target property for whether thread-local storage is supported. Eli Friedman2009-04-191-0/+1
| | | | | | | | Let me know if I messed up for some target. Note that for Windows, we should be able to support it (MSVC supports "__declspec(thread)"), but I'm pretty sure LLVM doesn't know how to generate the correct code. llvm-svn: 69552
* TargetInfo::validateAsmConstraint now takes a reference to the full ↵Anders Carlsson2009-02-281-2/+2
| | | | | | constraints string. This will make it possible to support multi-character constraints. No functionality change (for now). llvm-svn: 65696
* Give TargetInfo a new IntPtrType to hold the intptr_t type forChris Lattner2009-02-131-0/+1
| | | | | | | | | | a target. Make Preprocessor.cpp define a new __INTPTR_TYPE__ macro based on this. On linux/32, set intptr_t to int, instead of long. This fixes PR3563. llvm-svn: 64495
* simplify and refactor a bunch of type definition code in PreprocessorChris Lattner2009-02-061-0/+16
| | | | | | predefines buffer initialization. llvm-svn: 63919
* If an input constraint refers to an output constraint, it should have the ↵Anders Carlsson2009-01-271-0/+5
| | | | | | same constraint info as the output constraint. Fixes PR3417 llvm-svn: 63127
* Handle the 'X' constraint. Fixes <rdar://problem/6504897>.Anders Carlsson2009-01-181-0/+2
| | | | llvm-svn: 62446
* Add sema support for symbolic names in inline asm statements.Anders Carlsson2009-01-181-1/+39
| | | | llvm-svn: 62441
* Allow targets to override IntMaxTWidthNate Begeman2009-01-171-0/+1
| | | | llvm-svn: 62434
* Change TargetInfo::validateInputConstraint to take begin/end name iterators ↵Anders Carlsson2009-01-171-2/+4
| | | | | | instead of the number of outputs. No functionality change. llvm-svn: 62433
OpenPOWER on IntegriCloud