summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add two statistics to help track how we are computing the inline cost.Chandler Carruth2012-04-112-0/+11
| | | | | | Yea, 'NumCallerCallersAnalyzed' isn't a great name, suggestions welcome. llvm-svn: 154492
* Reapply 154397. Original message:Nadav Rotem2012-04-111-11/+18
| | | | | | | | Fix a dagcombine optimization which assumes that the vsetcc result type is always of the same size as the compared values. This is ture for SSE/AVX/NEON but not for all targets. llvm-svn: 154490
* Comment typo fix.Duncan Sands2012-04-111-1/+1
| | | | llvm-svn: 154488
* Revert "Make the "all" target depend on polly-test, so that users can run ↵Hongbin Zheng2012-04-111-1/+0
| | | | | | | | regression" This reverts commit 97bd8d50881000c11b65b0e033996ec5f57bcd15. llvm-svn: 154487
* Revert "Fix a bug introduced by r153739: We are not able to provide the correct"Hongbin Zheng2012-04-111-1/+1
| | | | | | This reverts commit 2c6bdbf972ac966498489d30a33bfd252df9107d. llvm-svn: 154486
* Add a triple to this test.Eric Christopher2012-04-111-1/+1
| | | | llvm-svn: 154485
* Add more fused mul+add/sub patterns. rdar://10139676Evan Cheng2012-04-113-20/+104
| | | | llvm-svn: 154484
* Reapply 154396 after fixing a test.Nadav Rotem2012-04-116-42/+93
| | | | | | | | | Original message: Modify the code that lowers shuffles to blends from using blendvXX to vblendXX. blendV uses a register for the selection while Vblend uses an immediate. On sandybridge they still have the same latency and execute on the same execution ports. llvm-svn: 154483
* Try to fix the windows buildbots by making this test a little lessEric Christopher2012-04-111-1/+1
| | | | | | dependent upon metadata ordering. llvm-svn: 154482
* Enable debug info for objective c implementations that may not haveEric Christopher2012-04-117-5/+42
| | | | | | | | an explicit instance variable. rdar://10590352 llvm-svn: 154481
* Clean up ARM fused multiply + add/sub support some more: rename some iselEvan Cheng2012-04-118-61/+53
| | | | | | | | | | | predicates. Also remove NEON2 since it's not really useful and it is confusing. If NEON + VFP4 implies NEON2 but NEON2 doesn't imply NEON + VFP4, what does it really mean? rdar://10139676 llvm-svn: 154480
* Fix an overly indented line. Remove an 'else' after an 'if' that returns.Craig Topper2012-04-111-4/+3
| | | | llvm-svn: 154479
* Inline implVisitAluOverflow by introducing a nested switch to convert the ↵Craig Topper2012-04-112-20/+18
| | | | | | intrinsic to an nodetype. llvm-svn: 154478
* Tablegen'd regpressure: emit the weighted pressure limit.Andrew Trick2012-04-111-1/+7
| | | | llvm-svn: 154477
* Support C++11 attributes at the start of a parameter-declaration.Richard Smith2012-04-114-10/+36
| | | | llvm-svn: 154476
* [libclang] Fix "error: conflicts with new declaration with ‘C’ linkage" ↵Argyrios Kyrtzidis2012-04-111-21/+21
| | | | | | | | that gcc emits but not clang. llvm-svn: 154475
* Table-generated register pressure fixes.Andrew Trick2012-04-111-24/+47
| | | | | | | Handle mixing allocatable and unallocatable register gracefully. Simplify the pruning of register unit sets. llvm-svn: 154474
* Optimize code a bit by calling push_back only once in some loops. Reduces ↵Craig Topper2012-04-111-26/+24
| | | | | | compiled code size a bit. llvm-svn: 154473
* [libclang] If displayDiagnostics is set (when calling clang_createIndex), ↵Argyrios Kyrtzidis2012-04-115-49/+109
| | | | | | | | | | | | | make sure to output the errors that occurred even if we did not get an AST (e.g. because the PCH failed to load). Also honor displayDiagnostics in clang_indexSourceFile(). rdar://11203489 llvm-svn: 154472
* Match (fneg (fma) to vfnma. rdar://10139676Evan Cheng2012-04-112-6/+33
| | | | llvm-svn: 154469
* Add retw and lretw instructions. Also, fix Intel syntax parsing for allCharles Davis2012-04-115-5/+41
| | | | | | ret instructions. llvm-svn: 154468
* Merge fma.ll into fusedMAC.llEvan Cheng2012-04-112-30/+28
| | | | llvm-svn: 154466
* Fix ARM disassembly of VLD instructions with writebacks.  And add test a caseKevin Enderby2012-04-113-0/+376
| | | | | | for all opcodes handed by DecodeVLDInstruction() in ARMDisassembler.cpp . llvm-svn: 154459
* No functionality changes, mostly cleanup.Greg Clayton2012-04-1122-144/+150
| | | | | | | | Cleaned up the Mutex::Locker and the ReadWriteLock classes a bit. Also cleaned up the GDBRemoteCommunication class to not have so many packet functions. Used the "NoLock" versions of send/receive packet functions when possible for a bit of performance. llvm-svn: 154458
* ARM add missing Thumb1 two-operand aliases for shift-by-immediate.Jim Grosbach2012-04-113-0/+57
| | | | | | rdar://11222742 llvm-svn: 154457
* Fix a number of problems with ARM fused multiply add/subtract instructions.Evan Cheng2012-04-1110-10/+160
| | | | | | | | | | 1. The new instruction itinerary entries are not properly described. 2. The asm parser can't handle vfms and vfnms. 3. There were no assembler, disassembler test cases. 4. HasNEON2 has the wrong assembler predicate. rdar://10139676 llvm-svn: 154456
* Tweak MachineLICM heuristics for cheap instructions.Jakob Stoklund Olesen2012-04-111-69/+89
| | | | | | | | | | | Allow cheap instructions to be hoisted if they are register pressure neutral or better. This happens if the instruction is the last loop use of another virtual register. Only expensive instructions are allowed to increase loop register pressure. llvm-svn: 154455
* Only check for PHI uses inside the current loop.Jakob Stoklund Olesen2012-04-111-27/+51
| | | | | | | | | | | Hoisting a value that is used by a PHI in the loop will introduce a copy because the live range is extended to cross the PHI. The same applies to PHIs in exit blocks. Also use this opportunity to make HasLoopPHIUse() non-recursive. llvm-svn: 154454
* Fix test to be register assignment invariant.Jakob Stoklund Olesen2012-04-111-1/+2
| | | | llvm-svn: 154453
* TableGen/reginfo potential bug: typo from previous checkin.Andrew Trick2012-04-101-1/+1
| | | | llvm-svn: 154452
* [analyzer] Don't crash even when the system functions are redefined.Anna Zaks2012-04-103-7/+72
| | | | | | | | | | (Applied changes to CStringAPI, Malloc, and Taint.) This might almost never happen, but we should not crash even if it does. This fixes a crash on the internal analyzer buildbot, where postgresql's configure was redefining memmove (radar://11219852). llvm-svn: 154451
* Tweak arm variants list for valid arches settings.Jason Molenda2012-04-101-3/+3
| | | | llvm-svn: 154450
* AtomicExpr: make ASTStmtReader a friend and remove setters. Also fix savingRichard Smith2012-04-105-51/+45
| | | | | | | of an uninitialized Stmt* in serialization of __atomic_init and add a test of atomics serialization. llvm-svn: 154448
* Move the constant-folding support for FP_ROUND in SelectionDAG from the ↵Owen Anderson2012-04-102-19/+12
| | | | | | | | one-operand version of getNode() to the two-operand version, since it became a two-operand node at sound point. Zap a testcase that this allows us to completely fold away. llvm-svn: 154447
* llvm-stress: stop abusing ConstantFP::get()Dylan Noblesmith2012-04-101-5/+29
| | | | | | | | | | | | | | | | ConstantFP::get(Type*, double) is unreliably host-specific: it can't handle a type like PPC128 on an x86 host. It even has a comment to that effect: "This should only be used for simple constant values like 2.0/1.0 etc, that are known-valid both as host double and as the target format." Instead, use APFloat. While we're at it, randomize the floating point value more thoroughly; it was previously limited to the range 0 to 2**19 - 1. PR12451. llvm-svn: 154446
* llvm-stress: don't make vectors of x86_mmx typeDylan Noblesmith2012-04-101-1/+7
| | | | | | | | | | | | LangRef.html says: "There are no arrays, vectors or constants of this type." This was hitting assertions when passing the -generate-x86-mmx option. PR12452. llvm-svn: 154445
* [tsan] two more compile-time optimizations:Kostya Serebryany2012-04-102-11/+103
| | | | | | | | | | | | | - don't isntrument reads from constant globals. Saves ~1.5% of instrumented instructions on CPU2006 (counting static instructions, not their execution). - don't insrument reads from vtable (which is a global constant too). Saves ~5%. I did not measure the run-time impact of this, but it is certainly non-negative. llvm-svn: 154444
* Fix quoting to allow shell expansion to occur for shell variablesKaelyn Uhrain2012-04-101-1/+1
| | | | | | introduced by the test harness' expansion of %t. llvm-svn: 154443
* modern objective-c translation: writing containerFariborz Jahanian2012-04-102-11/+71
| | | | | | subscripting. // rdar://11203853 llvm-svn: 154441
* Improved detection of ARM branch instructions toSean Callanan2012-04-101-6/+4
| | | | | | cover all possible condition codes. llvm-svn: 154440
* Handle llvm.fma.* intrinsics. rdar://10914096Evan Cheng2012-04-104-2/+50
| | | | llvm-svn: 154439
* [analyzer] dynamic_cast: Better model cast from a reference.Anna Zaks2012-04-103-15/+26
| | | | | | | Generate a sink when the dynamic_cast from a reference fails to represent a thrown exception. llvm-svn: 154438
* [libclang] For clang_getOverriddenCursors make sure to report overridden ↵Argyrios Kyrtzidis2012-04-103-16/+53
| | | | | | | | objc methods for methods in categories of super classes. rdar://11220358 llvm-svn: 154436
* Added more documentation in the header file to explain how to use the ↵Greg Clayton2012-04-101-1/+34
| | | | | | results that are found by the function calls to find_pointer_in_heap(). llvm-svn: 154435
* [analyzer] Add support for C++ dynamic_cast.Anna Zaks2012-04-104-8/+326
| | | | | | Simulate the C++ dynamic_cast in the analyzer. llvm-svn: 154434
* [analyzer] + commentsAnna Zaks2012-04-101-0/+4
| | | | llvm-svn: 154433
* When we determine that an initialization sequence failed due to anDouglas Gregor2012-04-103-3/+29
| | | | | | | | incomplete type, keep track of the actual type that was incomplete. Otherwise, we might fail to produce a diagnostic. Fixes PR12498. llvm-svn: 154432
* Add a comment noting that the fdiv -> fmul conversion won't generateDuncan Sands2012-04-102-3/+19
| | | | | | multiplication by a denormal, and some tests checking that. llvm-svn: 154431
* Improve the printing of __PRETTY_FUNCTION__ more provide moreDouglas Gregor2012-04-103-19/+247
| | | | | | information and more closely match GCC's, from Nikola Smiljanic! llvm-svn: 154430
* The MDString class stored a StringRef to the string which was already in aBill Wendling2012-04-105-19/+22
| | | | | | | | | | | | | StringMap. This was redundant and unnecessarily bloated the MDString class. Because the MDString class is a "Value" and will never have a "name", and because the Name field in the Value class is a pointer to a StringMap entry, we repurpose the Name field for an MDString. It stores the StringMap entry in the Name field, and uses the normal methods to get the string (name) back. PR12474 llvm-svn: 154429
OpenPOWER on IntegriCloud