Dan Gohman
f0d7b5df4b
Hoist this loop-invariant logic out of the loop.
...
llvm-svn: 96614
2010-02-18 21:34:02 +00:00
Jakob Stoklund Olesen
5b9d14b55e
Always normalize spill weights, also for intervals created by spilling.
...
Moderate the weight given to very small intervals.
The spill weight given to new intervals created when spilling was not
normalized in the same way as the original spill weights calculated by
CalcSpillWeights. That meant that restored registers would tend to hang around
because they had a much higher spill weight that unspilled registers.
This improves the runtime of a few tests by up to 10%, and there are no
significant regressions.
llvm-svn: 96613
2010-02-18 21:33:05 +00:00
Dan Gohman
34b5cb7deb
Make CodePlacementOpt detect special EH control flow by
...
checking whether AnalyzeBranch disagrees with the CFG
directly, rather than looking for EH_LABEL instructions.
EH_LABEL instructions aren't always at the end of the
block, due to FP_REG_KILL and other things. This fixes
an infinite loop compiling MultiSource/Benchmarks/Bullet.
llvm-svn: 96611
2010-02-18 21:25:53 +00:00
Devang Patel
823a78e1f8
Fix comments.
...
llvm-svn: 96610
2010-02-18 21:03:36 +00:00
Devang Patel
5c67cb332e
Destroy MDNodes gracefully while deleting llvm context.
...
llvm-svn: 96609
2010-02-18 20:53:16 +00:00
Devang Patel
d913aa8fd8
Ignore target dependent value in grep search.
...
llvm-svn: 96604
2010-02-18 19:52:12 +00:00
Dale Johannesen
fe3e4e29e3
Generate DBG_VALUE from dbg.value intrinsics. These currently
...
comes out as comments but will eventually generate DWARF.
llvm-svn: 96601
2010-02-18 18:51:15 +00:00
Dan Gohman
4fc21185cc
Clarify that ptrtoint+inttoptr are an alternative to GEP which are
...
not restricted by the GEP rules.
llvm-svn: 96598
2010-02-18 18:40:29 +00:00
Dan Gohman
c3b7c57bb0
Fix a typo.
...
llvm-svn: 96597
2010-02-18 18:22:41 +00:00
Dan Gohman
d6397d8097
Clarify that the rules about object hopping kick in when a pointer is
...
deferenced, rather than when the pointer value is computed.
llvm-svn: 96596
2010-02-18 18:22:18 +00:00
Dan Gohman
a3a061eab9
Fix typos Duncan noticed.
...
llvm-svn: 96594
2010-02-18 18:19:17 +00:00
Sanjiv Gupta
7534497c21
Remap the call sites of a shared function in interrupt line functions.
...
llvm-svn: 96591
2010-02-18 18:00:35 +00:00
Sanjiv Gupta
49c6de3b78
Re-factoring.
...
llvm-svn: 96589
2010-02-18 17:32:25 +00:00
Duncan Sands
b7bb8ab12e
Uniformize the way these options are printed. Requested by
...
Russell Wallace.
llvm-svn: 96580
2010-02-18 14:37:52 +00:00
Duncan Sands
80083e741f
Remove terminating dot in description. Inconsistency pointed
...
out by Russell Wallace.
llvm-svn: 96579
2010-02-18 14:10:41 +00:00
Duncan Sands
ca05b607b7
Refer to -help instead of --help since this is what tools themselves say.
...
Also, have tools output -help-hidden rather than refer to --help-hidden,
for consistency, and likewise adjust documentation. This doesn't change
every mention of --help, only those which seemed clearly safe.
llvm-svn: 96578
2010-02-18 14:08:13 +00:00
Benjamin Kramer
c855708633
Avoid a dangling pointer dereference, PassManager::add can delete the Pass.
...
llvm-svn: 96576
2010-02-18 12:57:05 +00:00
Chris Lattner
5bc53ac6f5
start sketching out the structure of code for result emission generation.
...
Nothing real here yet.
llvm-svn: 96575
2010-02-18 06:47:49 +00:00
Chris Lattner
43912e2c46
add a missing type cast.
...
llvm-svn: 96574
2010-02-18 06:33:42 +00:00
Chris Lattner
a2e094064f
remove empty file
...
llvm-svn: 96573
2010-02-18 06:29:06 +00:00
Bob Wilson
84fc0200bd
Use NEON vmin/vmax instructions for floating-point selects.
...
Radar 7461718.
llvm-svn: 96572
2010-02-18 06:05:53 +00:00
Jeffrey Yasskin
e4b750f830
Roll back the shared library, r96559. It broke two darwins and arm, mysteriously.
...
llvm-svn: 96569
2010-02-18 04:43:02 +00:00
Johnny Chen
2ef74d0ad2
Added LDRSBT, LDRHT, LDRSHT for disassembly only. And fixed encoding errors
...
of AI3ldsbpo, AI3ldhpo, and AI3ldshpo in ARMInstrFormats.td in the process.
llvm-svn: 96565
2010-02-18 03:27:42 +00:00
Chris Lattner
76506b3749
rename the child field to 'next'. This is not a parent/child
...
relationship, this is a linear list relationship.
llvm-svn: 96561
2010-02-18 02:53:41 +00:00
Chris Lattner
955650be1f
eliminate the MatcherNodeWithChild class, give the 'child'
...
field to MatcherNode.
llvm-svn: 96560
2010-02-18 02:49:24 +00:00
Jeffrey Yasskin
64b33dd9b7
Add a shared library for LLVM, named libLLVM2.7svn.(so|dylib), and add an
...
--enable-shared configure flag to have the tools linked shared. (2.7svn is just
$(LLVMVersion) so it'll change to "2.7" in the release.) Always link the
example programs shared to test that the shared library keeps working.
On my mac laptop, Debug libLLVM2.7svn.dylib is 39MB, and opt (for example) is
16M static vs 440K shared.
Two things are less than ideal here:
1) The library doesn't include any version information. Since we expect to break
the ABI with every release, this shouldn't be much of a problem. If we do
release a compatible 2.7.1, we may be able to hack its library to work with
binaries compiled against 2.7.0, or we can just ask them to recompile. I'm
hoping to get a real packaging expert to look at this for the 2.8 release.
2) llvm-config doesn't yet have an option to print link options for the shared
library. I'll add this as a subsequent patch.
llvm-svn: 96559
2010-02-18 02:36:02 +00:00
Evan Cheng
9af06dfc83
Some dag combiner goodness:
...
Transform br (xor (x, y)) -> br (x != y)
Transform br (xor (xor (x,y), 1)) -> br (x == y)
Also normalize (and (X, 1) == / != 1 -> (and (X, 1)) != / == 0 to match to "test on x86" and "tst on arm"
llvm-svn: 96556
2010-02-18 02:13:50 +00:00
Devang Patel
f5f89839ed
New test case for r96543.
...
llvm-svn: 96544
2010-02-18 00:53:49 +00:00
Chris Lattner
025ca7158a
fit in 80 cols
...
llvm-svn: 96541
2010-02-18 00:23:27 +00:00
Johnny Chen
7f0bf276c2
Added for disassembly only the variants of DMB, DSB, and ISB.
...
llvm-svn: 96540
2010-02-18 00:19:08 +00:00
Eric Christopher
88fe6775de
Fix a few unused parameter warnings.
...
llvm-svn: 96533
2010-02-17 23:55:26 +00:00
Daniel Dunbar
2f311d34fb
MC/Mach-O: Update fixup values for change to X86 offsets.
...
llvm-svn: 96532
2010-02-17 23:45:16 +00:00
Dan Gohman
2324463069
Make this an unnumbered list.
...
llvm-svn: 96528
2010-02-17 22:54:10 +00:00
Dan Gohman
0053291bb5
HTML validation fixes.
...
llvm-svn: 96527
2010-02-17 22:50:12 +00:00
Dan Gohman
b07c61ac51
Add an "advanced" GetElementPtr FAQ document, with answers to
...
questions left unanswered by the first GetElementPtr FAQ.
llvm-svn: 96526
2010-02-17 22:47:06 +00:00
Bob Wilson
400e59ba21
Remove the NEON N2VSInt instruction class: it's only used in one place and
...
since it has no pattern, there's not much point in distinguishing an "N2VS"
class for intrinsics anyway.
llvm-svn: 96525
2010-02-17 22:42:54 +00:00
Johnny Chen
69bbc8c81b
Added CLREX (Clear-Exclusive) for disassembly only.
...
A8.6.30
llvm-svn: 96523
2010-02-17 22:37:58 +00:00
Bob Wilson
ea55421ec2
More cleanup for NEON:
...
* Use "S" abbreviation for scalar single FP registers in class and pattern
names, instead of keeping the "D" (for "double") abbreviation and tacking on
an "s" elsewhere in the name.
* Move the scalar single FP register classes and patterns to be more
consistent with other definitions in the file.
* Rename "VNEGf32d" definition to "VNEGfd" for consistency.
* Deleted the N2VDIntsPat pattern; N2VSPat is good enough.
llvm-svn: 96521
2010-02-17 22:23:11 +00:00
Johnny Chen
6b8a65b0e0
Added RFE for disassembly only.
...
B6.1.8 RFE Return From Exception loads the PC and the CPSR from the word at the
specified address and the following word respectively.
llvm-svn: 96519
2010-02-17 21:39:10 +00:00
David Greene
d93fb1f15d
Make the non-temporal bit "significant" in MemSDNodes so they aren't
...
CSE'd or otherwise combined with temporal MemSDNodes.
llvm-svn: 96505
2010-02-17 20:21:42 +00:00
Jakob Stoklund Olesen
1b593e1b45
Remember to define super registers in mips calls.
...
llvm-svn: 96504
2010-02-17 20:18:50 +00:00
Daniel Dunbar
92e99d82a2
Add Regex::sub, for doing regular expression substitution with backreferences.
...
llvm-svn: 96503
2010-02-17 20:08:42 +00:00
Chris Lattner
f4a6f4d0ef
irbuilder is doing constant folding now by default, PR6092
...
llvm-svn: 96502
2010-02-17 19:54:34 +00:00
Chris Lattner
9af1b53985
fix some out of date prose dating from the LLVMContext changes.
...
llvm-svn: 96500
2010-02-17 19:51:31 +00:00
Daniel Dunbar
27247dd1e8
Fix comment.
...
llvm-svn: 96498
2010-02-17 19:26:45 +00:00
Chris Lattner
a1f12685c7
redisable this to save people a small amount of build time.
...
llvm-svn: 96497
2010-02-17 19:19:50 +00:00
Jakob Stoklund Olesen
e7862f29ec
Dead code elimination.
...
llvm-svn: 96496
2010-02-17 19:13:56 +00:00
Chris Lattner
5f903139fa
"Fix and issue in SparcAsmPrinter where multiple identical .LLGETPCHn symbols could be emitted in the same file (it was uniqued by block number, but not by function number). " Patch by Nathan Keynes!
...
llvm-svn: 96495
2010-02-17 18:57:19 +00:00
Chris Lattner
2ec1f1a54a
move isOnlyReachableByFallthrough out of MachineBasicBlock into AsmPrinter,
...
and add a sparc implementation that knows about delay slots. Patch by
Nathan Keynes!
llvm-svn: 96492
2010-02-17 18:52:56 +00:00
Chris Lattner
f95f8a8c7c
add a note, from PR5100
...
llvm-svn: 96490
2010-02-17 18:42:24 +00:00