summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Force __asan_set_death_callback into the resulting binary.Alexander Potapenko2012-03-011-1/+2
| | | | llvm-svn: 151808
* Fix a codegen fault in which log2 or exp2 could be dead-code eliminated even ↵James Molloy2012-03-013-2/+34
| | | | | | | | though they could have sideeffects. Only allow log2/exp2 to be converted to an intrinsic if they are declared "readnone". llvm-svn: 151807
* Make TargetRegisterClasses non-virtual by making the only virtual function a ↵Benjamin Kramer2012-03-013-60/+45
| | | | | | | | | | | function pointer. This allows us to make TRC non-polymorphic and value-initializable, eliminating a huge static initializer and a ton of cruft from the generated code. Shrinks ARMBaseRegisterInfo.o by ~100k. llvm-svn: 151806
* Avoid examining the AST from the parser, and simplify somewhat.Richard Smith2012-03-011-15/+13
| | | | llvm-svn: 151805
* Revert r151800, which was committed without review and has correctness issues.Richard Smith2012-03-016-157/+0
| | | | llvm-svn: 151804
* Fixing a buildbot complaint about nested templates.Aaron Ballman2012-03-011-1/+1
| | | | llvm-svn: 151803
* Fixed the incorrect LLVM configuration to be "Release".Greg Clayton2012-03-011-3/+3
| | | | llvm-svn: 151802
* 1) solving a bug where, after Jim's fixes to stack frames, synthetic ↵Enrico Granata2012-03-0110-459/+408
| | | | | | | | | | | | | | | | | children were not recalculated when necessary, causing them to get out of sync with live data 2) providing an updated list of tagged pointers values for the objc_runtime module - hopefully this one is final 3) changing ValueObject::DumpValueObject to use an Options class instead of providing a bulky list of parameters to pass around this change had been laid out previously, but some clients of DumpValueObject() were still using the old prototype and some arguments were treated in a special way and passed in directly instead of through the Options class 4) providing new GetSummaryAsCString() and GetValueAsCString() calls in ValueObject that are passed a formatter object and a destination string and fill the string by formatting themselves using the formatter argument instead of the default for the current ValueObject 5) removing the option to have formats and summaries stick to a variable for the current stoppoint after some debate, we are going with non-sticky: if you say frame variable --format hex foo, the hex format will only be applied to the current command execution and not stick when redisplaying foo the other option would be full stickiness, which means that foo would be formatted as hex for its whole lifetime we are open to suggestions on what feels "natural" in this regard llvm-svn: 151801
* Implements support for #pragma include_alias in ms compatibility mode. ↵Aaron Ballman2012-03-016-0/+157
| | | | | | Fixes PR10705. llvm-svn: 151800
* Changed the default installation paths for lldb for BuildAndIntegration builds.Greg Clayton2012-03-011-7/+8
| | | | llvm-svn: 151799
* Added support for parsing declspecs on enumerations. Fixes PR8783Aaron Ballman2012-03-012-2/+8
| | | | llvm-svn: 151798
* Implement "optimization" for lambda-to-block conversion which inlines the ↵Eli Friedman2012-03-0110-92/+179
| | | | | | | | generated block literal for lambdas which are immediately converted to block pointer type. This simplifies the AST, avoids an unnecessary copy of the lambda and makes it much easier to avoid copying the result onto the heap. Note that this transformation has a substantial semantic effect outside of ARC: it gives the converted lambda lifetime semantics similar to a block literal. With ARC, the effect is much less obvious because the lifetime of blocks is already managed. llvm-svn: 151797
* Remove the sanity checks from RegisterContextLLDB::InitializeZerothFrameJason Molenda2012-03-011-13/+0
| | | | | | | | | which require a valid CFA address to create a stack frame. On connecting to just-starting-up hardware we may have a stack pointer/frame pointer of 0 but we should still create a stack frame so other code in lldb can retrieve register values via a stackframe. llvm-svn: 151796
* llvm/test/CMakeLists.txt: Update dependencies to add llvm-readobj to "check".NAKAMURA Takumi2012-03-011-1/+2
| | | | llvm-svn: 151795
* Reject 'a = {0} = {0}' rather than parsing it as '(a = {0}) = {0}'. AlsoRichard Smith2012-03-013-15/+36
| | | | | | | improve the diagnostics for some attempts to use initializer lists in expressions. llvm-svn: 151794
* If the unwinder fails to make us a frame 0, make one by hand from the SP & PC.Jim Ingham2012-03-011-12/+12
| | | | llvm-svn: 151793
* Emit the "is an intrinsic overloaded" table as a bitfield.Benjamin Kramer2012-03-013-18/+14
| | | | llvm-svn: 151792
* Correct an example of a feature name to actually use a feature name ratherRichard Smith2012-03-011-2/+2
| | | | | | than an attribute name. Patch by Michel Morin! llvm-svn: 151791
* Added a testcase verifying that forward declarationsSean Callanan2012-03-015-0/+119
| | | | | | | of Objective-C classes in header files are correctly resolved in the final type. llvm-svn: 151790
* Updated LLVM to take a new MC JIT that supportsSean Callanan2012-03-018-17/+31
| | | | | | | | | | allocations by section. We install these sections in the target process and inform the JIT of their new locations. Also removed some unused variable warnings. llvm-svn: 151789
* Pass endian information to constructors. Define separate functions to createAkira Hatanaka2012-03-015-57/+55
| | | | | | | | objects for big endian and little endian targets. Patch by Jack Carter. llvm-svn: 151788
* Make InlineSpiller bundle-aware.Jakob Stoklund Olesen2012-03-012-45/+57
| | | | | | | | | | Simply treat bundles as instructions. Spill code is inserted between bundles, never inside a bundle. Rewrite all operands in a bundle at once. Don't attempt and memory operand folding inside bundles. llvm-svn: 151787
* Fix regression from llvm-gcc where we should NOT emit a warning about ↵Ted Kremenek2012-03-012-2/+10
| | | | | | __attribute__((NSObject)) on a property declaration. This is needed to have retain properties for non-object pointers. Fixes <rdar://problem/10930507>. llvm-svn: 151786
* [Object]David Meyer2012-03-0116-4/+654
| | | | | | | | | * Add begin_dynamic_table() / end_dynamic_table() private interface to ELFObjectFile. * Add begin_libraries_needed() / end_libraries_needed() interface to ObjectFile, for grabbing the list of needed libraries for a shared object or dynamic executable. * Implement this new interface completely for ELF, leave stubs for COFF and MachO. * Add 'llvm-readobj' tool for dumping ObjectFile information. llvm-svn: 151785
* [analyzer] Diagnostics - do not try to cleanup the path with macros, itAnna Zaks2012-03-011-3/+0
| | | | | | | will be done by the general cleanup later on. A Patch by Ted. llvm-svn: 151784
* Tighten type-checking a bit to make it clearer how BuildCXXMemberCallExpr is ↵Eli Friedman2012-03-012-3/+4
| | | | | | used. llvm-svn: 151783
* Move getBundleStart() into MachineInstrBundle.h.Jakob Stoklund Olesen2012-03-015-22/+20
| | | | | | | | | This allows the function to be inlined, and makes it suitable for use in getInstructionIndex(). Also provide a const version. C++ is great for touch typing practice. llvm-svn: 151782
* Emit the intrinsic modref info as a lookup table instead of a huge switch.Benjamin Kramer2012-03-011-16/+18
| | | | | | Shrinks BasicAliasAnalysis.o from 106k to 56k on i386. llvm-svn: 151781
* Convert the thread plans over from using the stack count to do their logic ↵Jim Ingham2012-03-0113-94/+175
| | | | | | | | to using StackID's. This should be more efficient. llvm-svn: 151780
* Don't redundantly copy implicit operands when rematerializing.Lang Hames2012-03-012-4/+67
| | | | | | | While we're at it - don't copy vreg implicit operands while rematerializing. This fixes PR12138. llvm-svn: 151779
* Fix flags for test in MC/MachO/ARM/empty-function-nop.llRichard Trieu2012-03-011-4/+4
| | | | llvm-svn: 151778
* Fixed the 32-bit runtime dynamic loader to allocateSean Callanan2012-03-011-1/+1
| | | | | | | code sections when needed. It just had a conditional the wrong way around. llvm-svn: 151777
* Move suport for redefining operator keywords from -fms-extensions to ↵Nico Weber2012-03-012-2/+2
| | | | | | -fms-compatibility. llvm-svn: 151776
* Change if...else if...else if... to a switch.Ted Kremenek2012-03-011-19/+26
| | | | llvm-svn: 151775
* [analyzer] when scanning FIDs in a PathDiagnostic, correctly recurse calls ↵Ted Kremenek2012-02-292-24/+60
| | | | | | and macros. llvm-svn: 151774
* Implement getSubRegIndex as a linear search on the SubRegTable instead of ↵Benjamin Kramer2012-02-291-14/+6
| | | | | | | | | using a big switch. - The search bounds are constant, in the worst case (ARM target) it will scan over 30 uint16_ts. - This method isn't very hot, I had problems finding a testcase where it's called more than a dozen of times (no perf impact). llvm-svn: 151773
* Added annotations for x86 pc relative loads to llvm's 'C' disassembler.Kevin Enderby2012-02-291-0/+24
| | | | | | | So with darwin's otool(1) an x86_64 hello world .o file will print: leaq L_.str(%rip), %rax ## literal pool for: Hello world llvm-svn: 151769
* Allow operator keywords to be #defined in ms-ext mode.Nico Weber2012-02-293-3/+189
| | | | | | | | | | | | | | Fixes PR10606. I'm not sure if this is the best way to go about it, but I locally enabled this code path without the msext conditional, and all tests pass, except for test/Preprocessor/cxx_oper_keyword.cpp which explicitly checks that operator keywords can't be redefined. I also parsed chromium/win with a clang with and without this patch. It introduced no new errors, but removes 43 existing errors. llvm-svn: 151768
* Test for my last patch. // rdar://10267155.Fariborz Jahanian2012-02-291-0/+29
| | | | llvm-svn: 151767
* objective-c: provide fixit hint when atomic property does notFariborz Jahanian2012-02-299-39/+91
| | | | | | | have matching user defined setter/getter and a warning is issued. In this case, a fixit note is displayed. // rdar://10267155 llvm-svn: 151766
* First attempt at arm support.Howard Hinnant2012-02-292-8/+51
| | | | llvm-svn: 151765
* Tidy up. 80 columns.Jim Grosbach2012-02-292-14/+23
| | | | llvm-svn: 151764
* Emit the SubRegTable with the smallest possible integer type.Benjamin Kramer2012-02-294-11/+14
| | | | | | Doesn't help ARM with its massive register set, but halves the size on x86 and all other targets. llvm-svn: 151760
* Fix a typo in comment.Johnny Chen2012-02-291-1/+1
| | | | llvm-svn: 151759
* Tidy up. Spelling.Jim Grosbach2012-02-291-2/+2
| | | | llvm-svn: 151758
* rdar://problem/10652076Johnny Chen2012-02-291-10/+25
| | | | | | | | Incremental check in to calculate the offsets of registers correctly. Registers can be primordial or composite, for example, r0-r12 are primordial, s0-s31 are primordial, while q0 is composite consisting of (s0, s1, s2, s3). Modify q0-q8 to be composed of the primordial s0-s31 registers. llvm-svn: 151757
* Move the subregister indicies enum into the REGINFO_ENUM section.Jim Grosbach2012-02-291-15/+14
| | | | llvm-svn: 151756
* BitstreamWriter: Use SmallVector::append instead of multiple push_back calls.Daniel Dunbar2012-02-291-4/+6
| | | | llvm-svn: 151755
* Fix a couple -Wuninitialized warnings from gcc. Reported by David Greene.Eli Friedman2012-02-292-2/+3
| | | | llvm-svn: 151754
* Fixing a problem with v1 runtime - plus hopefully finalizing the code to ↵Enrico Granata2012-02-291-12/+13
| | | | | | check for tagged pointers llvm-svn: 151753
OpenPOWER on IntegriCloud