summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Remove accidentaly left node from previous iteration of the patch.Roman Divacky2011-07-041-3/+0
| | | | | | Noticed by Benjamin Kramer! llvm-svn: 134376
* Move early tail duplication earlier.Rafael Espindola2011-07-041-6/+6
| | | | | | | | | | | | | | This fixes the issue noted in PR10251 where early tail dup of bbs with indirectbr would cause a bb to be duplicated into a loop preheader and then into its predecessors, creating phi nodes with identical operands just before register allocation. This helps with jsinterp.o size (__TEXT goes from 163568 to 126656) and a bit with performance 1.005x faster on sunspider (jits still enabled). The result on webkit with the jit disabled is more significant: 1.021x faster. llvm-svn: 134372
* Move most of the pre BB code to TailDuplicateAndUpdate. Change theRafael Espindola2011-07-041-112/+125
| | | | | | HasIndirectbr variable to be just that. No functionality change. llvm-svn: 134371
* Reduce indentation and fix the count of how many PHIs we have inserted.Rafael Espindola2011-07-041-75/+80
| | | | llvm-svn: 134370
* Fix PR10244.Jakob Stoklund Olesen2011-07-041-4/+4
| | | | | | | | | | | | A split point inserted in a block with a landing pad successor may be hoisted above the call to ensure that it dominates all successors. The code that handles the rest of the basic block must take this into account. I am not including a test case, it would be very fragile. PR10244 comes from building clang with exceptions enabled. llvm-svn: 134369
* Make the i64 and f64 be 64bit ABI aligned in the target description.Roman Divacky2011-07-031-1/+1
| | | | | | This is what both the ABI and clang says. llvm-svn: 134367
* test/CodeGen/X86/lsr-nonaffine.ll: Relax expressions for Win64 CC to appease ↵NAKAMURA Takumi2011-07-031-3/+3
| | | | | | Win32 hosts. llvm-svn: 134366
* Fix an easy fixme.Rafael Espindola2011-07-031-6/+10
| | | | llvm-svn: 134364
* FileCheck-ize another test. Reduces the llc invocations from 8 to 1, andChandler Carruth2011-07-021-8/+41
| | | | | | | makes one of the tests actually mean something (as the string 'add' will always appear in the output of this file). llvm-svn: 134358
* Avoid writing to an arbitrary filename during the test run by writing toChandler Carruth2011-07-021-8/+8
| | | | | | a file descriptor. llvm-svn: 134355
* FileCheck-ize another X86 test, making it more precisely verify theChandler Carruth2011-07-021-13/+24
| | | | | | desired result based on the comments in the file. llvm-svn: 134354
* Quote two greps which contain parentheses.Chandler Carruth2011-07-022-2/+2
| | | | llvm-svn: 134353
* FileCheck-ize and simplify RUN lines.Chandler Carruth2011-07-021-4/+3
| | | | llvm-svn: 134352
* FileCheck-izeChandler Carruth2011-07-021-1/+6
| | | | llvm-svn: 134351
* FileCheck-ize and tighten up assertions to only check the relevant sections.Chandler Carruth2011-07-021-3/+11
| | | | llvm-svn: 134350
* FileCheck-ize and cleanup IR.Chandler Carruth2011-07-021-5/+9
| | | | llvm-svn: 134349
* FileCheck-izeChandler Carruth2011-07-021-3/+8
| | | | llvm-svn: 134348
* Remove a grep that is already checked with FileCheck.Chandler Carruth2011-07-021-1/+1
| | | | llvm-svn: 134346
* FileCheck-izeChandler Carruth2011-07-021-2/+6
| | | | llvm-svn: 134345
* FileCheck-ize and modernize IR.Chandler Carruth2011-07-021-6/+12
| | | | llvm-svn: 134344
* FileCheck-ize and simplify RUNs.Chandler Carruth2011-07-021-5/+8
| | | | llvm-svn: 134343
* FileCheck-ize and modernize the RUN line.Chandler Carruth2011-07-021-3/+6
| | | | llvm-svn: 134342
* FileCheck-ize, tightening checks and avoiding a temporary file.Chandler Carruth2011-07-021-6/+9
| | | | llvm-svn: 134341
* FileCheck-ize, tightening checks and avoiding a temporary file.Chandler Carruth2011-07-021-6/+9
| | | | llvm-svn: 134340
* FileCheck-izeChandler Carruth2011-07-021-1/+5
| | | | llvm-svn: 134339
* FileCheck-izeChandler Carruth2011-07-021-1/+6
| | | | llvm-svn: 134338
* FileCheck-ize a test, avoiding a temporary file.Chandler Carruth2011-07-021-4/+9
| | | | llvm-svn: 134337
* FileCheck-ize and simplify this test.Chandler Carruth2011-07-021-5/+9
| | | | llvm-svn: 134336
* FileCheck-izeChandler Carruth2011-07-021-1/+2
| | | | llvm-svn: 134335
* FileCheck-ize another codegen test.Chandler Carruth2011-07-021-1/+7
| | | | llvm-svn: 134334
* Partially FileCheck-ize a test to remove a weird quoting situation.Chandler Carruth2011-07-021-2/+5
| | | | llvm-svn: 134333
* FileCheck-ize another test, and upgrade its syntax a bit.Chandler Carruth2011-07-021-9/+13
| | | | llvm-svn: 134332
* FileCheck-ize another codegen test, tightening it up.Chandler Carruth2011-07-021-15/+22
| | | | llvm-svn: 134331
* FileCheck-ize another test, making it much more precise for testing theChandler Carruth2011-07-021-1/+17
| | | | | | individual cases, while hard coding less about registers in use. llvm-svn: 134330
* FileCheck-ize another test. This one is more clear and runs fewerChandler Carruth2011-07-021-13/+30
| | | | | | commands as a result. llvm-svn: 134329
* FileCheck-ize a test, no functionality changed.Chandler Carruth2011-07-021-1/+2
| | | | llvm-svn: 134328
* Use subprocess.Popen instead of popen2 to stop a deprecation warning when ↵Jordy Rose2011-07-021-1/+1
| | | | | | running lit on OS X llvm-svn: 134324
* Remove unused array.Duncan Sands2011-07-021-21/+0
| | | | llvm-svn: 134323
* Revert previous commit. It seems that whether casting to voidDuncan Sands2011-07-021-1/+1
| | | | | | is valid or not depends on which system you build. llvm-svn: 134321
* Supress gcc-4.5 warning about the result not being used.Duncan Sands2011-07-021-1/+1
| | | | llvm-svn: 134319
* Remove unused constant.Duncan Sands2011-07-021-1/+0
| | | | llvm-svn: 134318
* Use getVNInfoAt.Rafael Espindola2011-07-021-2/+1
| | | | llvm-svn: 134312
* Consistent diagnostic capitalization and redundant context elimination.Jakob Stoklund Olesen2011-07-021-8/+5
| | | | llvm-svn: 134311
* Better diagnostics when inline asm fails to allocate.Jakob Stoklund Olesen2011-07-023-26/+20
| | | | | | | | asm.c:2:7: error: ran out of registers during register allocation asm(""::"r"(0), "r"(1), "r"(2), "r"(3), "r"(4), "r"(5), "r"(6), "r"(7), "r"(8), "r"(9)); ^ llvm-svn: 134310
* Check the VN of the src register at the two copies, not just theRafael Espindola2011-07-021-1/+6
| | | | | | register number. llvm-svn: 134309
* Be less specific about register allocation ordering.Eric Christopher2011-07-021-2/+2
| | | | llvm-svn: 134308
* Include a source location when complaining about bad inline assembly.Jakob Stoklund Olesen2011-07-023-10/+46
| | | | | | | | | | | | | | | | Add a MI->emitError() method that the backend can use to report errors related to inline assembly. Call it from X86FloatingPoint.cpp when the constraints are wrong. This enables proper clang diagnostics from the backend: $ clang -c pr30848.c pr30848.c:5:12: error: Inline asm output regs must be last on the x87 stack __asm__ ("" : "=u" (d)); /* { dg-error "output regs" } */ ^ 1 error generated. llvm-svn: 134307
* indvars -disable-iv-rewrite: bug fix involving weird geps and related cleanup.Andrew Trick2011-07-023-50/+81
| | | | llvm-svn: 134306
* Use a new strategy for preventing eviction loops in RAGreedy.Jakob Stoklund Olesen2011-07-021-57/+74
| | | | | | | | | | | | | | | | | | | Every live range is assigned a cascade number the first time it is involved in an eviction. As the evictor, it gets a new cascade number. Every evictee is assigned the same cascade number as the evictor. Eviction is prohibited if the evictor has a lower assigned cascade number than the evictee. This means that assigned cascade numbers are monotonically increasing with every eviction, yet they are bounded by NextCascade which can only be incremented by new live ranges. Thus, infinite loops cannot happen, but eviction cascades can still be triggered by new live ranges as we want. Thanks to Andy for explaining this to me. llvm-svn: 134303
* Add getFeatureBits to extract feature bits for a given CPU.Evan Cheng2011-07-022-0/+12
| | | | llvm-svn: 134298
OpenPOWER on IntegriCloud