David Greene
47695623c5
Change errs() to dbgs().
...
llvm-svn: 92529
2010-01-04 22:49:02 +00:00
David Greene
5f0560aeb8
Change errs() to dbgs().
...
llvm-svn: 92528
2010-01-04 22:41:43 +00:00
David Greene
593fd246ac
Change errs() to dbgs().
...
llvm-svn: 92524
2010-01-04 22:33:16 +00:00
Daniel Dunbar
3e856e5f8f
tblgen/OptParser: Use EmitSourceFileHeader.
...
llvm-svn: 92521
2010-01-04 22:03:51 +00:00
David Greene
8d04d65a84
Change errs() to dbgs().
...
llvm-svn: 92520
2010-01-04 22:02:01 +00:00
Douglas Gregor
57be824b19
Fix CMake build for InstCombine changes
...
llvm-svn: 92519
2010-01-04 21:58:55 +00:00
David Greene
56dd445b5f
Change errs() to dbgs().
...
llvm-svn: 92518
2010-01-04 21:48:34 +00:00
David Greene
42bc25814f
Change errs() to dbgs().
...
llvm-svn: 92516
2010-01-04 21:35:15 +00:00
David Greene
d43c9cad00
Change errs() to dbgs().
...
llvm-svn: 92515
2010-01-04 21:26:07 +00:00
Dan Gohman
73b0882c6e
Make this test more portable.
...
llvm-svn: 92514
2010-01-04 21:23:34 +00:00
Evan Cheng
275a43dadb
Perform this folding as a target specific dag combine:
...
(or (x << c) | (y >> (64 - c))) ==> (shld64 x, y, c)
The isel patterns may not catch all the cases if general dag combine has reduced width of source operands.
llvm-svn: 92513
2010-01-04 21:22:48 +00:00
Dan Gohman
2754bdcfdb
Use a pointer type rather than MVT::Other for the ExternalSymbol node used
...
in an inline asm.
llvm-svn: 92512
2010-01-04 21:00:54 +00:00
Dan Gohman
f5f090c2c5
Remove some README.txt entries which are now implemented.
...
llvm-svn: 92511
2010-01-04 20:55:05 +00:00
Devang Patel
e04ac70892
Remove oversimplified test case.
...
llvm-svn: 92510
2010-01-04 20:54:06 +00:00
Dan Gohman
b71bc40eed
Add some tests and update an existing test to reflect recent
...
x86 isel peeps.
llvm-svn: 92509
2010-01-04 20:53:54 +00:00
Dan Gohman
5f107150ed
A use by operand 1 or 2 of a SELECT is not a FLAGS use. This
...
lets the test-elimination work in more conditional-move cases.
llvm-svn: 92508
2010-01-04 20:52:50 +00:00
Dan Gohman
f87ad693cf
Flags-producing add, and, or, etc. have the same profibility
...
rules as normal add, and, or, etc.
llvm-svn: 92507
2010-01-04 20:51:50 +00:00
Dan Gohman
29583f656d
Add SDNPCommutative and SDNPAssociative to several X86 target nodes.
...
This lets isel fold loads into them in more cases.
llvm-svn: 92506
2010-01-04 20:51:05 +00:00
Devang Patel
23fa5c982d
Fix begin and end markers for nested scopes.
...
llvm-svn: 92505
2010-01-04 20:44:00 +00:00
Dan Gohman
a89531ec4f
Replace some special-case code which probably was buggy with an assertion
...
verifying that the special case does not occur.
llvm-svn: 92504
2010-01-04 20:36:57 +00:00
Dan Gohman
f47c2a2335
Remove the CPAttrParentAsRoot code, which is unused, and inconvenient
...
for a refactoring I'm working on.
llvm-svn: 92503
2010-01-04 20:31:55 +00:00
David Greene
ff1cb647fb
Change errs() to dbgs().
...
llvm-svn: 92502
2010-01-04 19:57:26 +00:00
Devang Patel
46d7029a91
The test, derived from optimzed IR, does not mention "bar" in debug info anywhere so the dwarf writer is not expected to emit any debug info for function "bar".
...
llvm-svn: 92499
2010-01-04 19:41:13 +00:00
David Greene
1c49766403
Change errs() to dbgs().
...
llvm-svn: 92498
2010-01-04 19:36:42 +00:00
David Greene
11dfd04083
Change errs() to dbgs().
...
llvm-svn: 92496
2010-01-04 19:10:20 +00:00
Chris Lattner
3b060b2d41
Truncate GEP indexes larger than the pointer size down to pointer size
...
when doing this transform if the GEP is not inbounds. No testcase because
it is very difficult to trigger this: instcombine already canonicalizes
GEP indices to pointer size, so it relies specific permutations of the
instcombine worklist.
Thanks to Duncan for pointing this possible problem out.
llvm-svn: 92495
2010-01-04 18:57:15 +00:00
Chris Lattner
8304a93ff4
silence a bogus 'might be used uninit' warning from GCC.
...
llvm-svn: 92494
2010-01-04 18:48:26 +00:00
Dan Gohman
4a8e4ee52a
Add a comment.
...
llvm-svn: 92492
2010-01-04 18:38:39 +00:00
David Greene
c6beea09c5
Change errs() to dbgs().
...
llvm-svn: 92490
2010-01-04 17:47:05 +00:00
Anton Korobeynikov
3915cf5ef4
Fix invalid chain folding for memory variant of sdiv / udiv
...
llvm-svn: 92472
2010-01-04 10:31:54 +00:00
Chris Lattner
e19878577c
move some more cast-related stuff
...
llvm-svn: 92471
2010-01-04 07:59:07 +00:00
Mikhail Glushenkov
38e36d577a
80-col violations, trailing whitespace.
...
llvm-svn: 92470
2010-01-04 07:55:25 +00:00
Chris Lattner
f9920fbac9
move the [Can]EvaluateInDifferentType functions out to InstCombineCasts.cpp
...
llvm-svn: 92469
2010-01-04 07:54:59 +00:00
Chris Lattner
7a5037baf5
split 943 lines of instcombine out to a new InstCombineCasts.cpp
...
file. InstructionCombining.cpp is now down to a svelte 9300 lines :)
llvm-svn: 92468
2010-01-04 07:53:58 +00:00
Chris Lattner
fed736376e
split instcombine of compares (visit[FI]Cmp) out to
...
a new InstCombineCompares.cpp file.
llvm-svn: 92467
2010-01-04 07:37:31 +00:00
Chris Lattner
176c21d33e
update cmakefile
...
llvm-svn: 92466
2010-01-04 07:19:55 +00:00
Chris Lattner
fbcc4eb5a5
move the 'SimplifyDemandedFoo' methods out to their own file, cutting 1K lines out of instcombine.cpp
...
llvm-svn: 92465
2010-01-04 07:17:19 +00:00
Mikhail Glushenkov
a73e92b400
Fix the Emacs mode string.
...
Also trailing whitespace & 80-col violations.
llvm-svn: 92464
2010-01-04 07:16:12 +00:00
Chris Lattner
cf0889fda3
split the instcombine class definition out to a header shared
...
among the instcombine library.
llvm-svn: 92463
2010-01-04 07:12:23 +00:00
Chris Lattner
cb0fe8a20b
remove a ton of unneeded LLVMContext stuff.
...
llvm-svn: 92462
2010-01-04 07:02:48 +00:00
Chris Lattner
ec9a1ab1bb
move InstCombineWorklist out to its own header.
...
llvm-svn: 92461
2010-01-04 06:30:00 +00:00
Chris Lattner
2e86be5607
forgot to svn add these.
...
llvm-svn: 92460
2010-01-04 06:28:20 +00:00
Chris Lattner
2d9948f5f1
move instcombine to its own library, it's past time.
...
llvm-svn: 92459
2010-01-04 06:23:24 +00:00
Chris Lattner
ce3f5f3448
implement an instcombine xform needed by clang's codegen
...
on the example in PR4216. This doesn't trigger in the testsuite,
so I'd really appreciate someone scrutinizing the logic for
correctness.
llvm-svn: 92458
2010-01-04 06:03:59 +00:00
Chris Lattner
8e83066d12
fix PR5930, allowing the asmprinter to emit difference between
...
two labels as a truncate.
llvm-svn: 92455
2010-01-03 18:33:18 +00:00
Chris Lattner
80802043f4
it isn't safe to speculative load from a malloc, it might have
...
returned null, and may not have been big enough in any case.
Thanks to Jay Foad for pointing this out!
llvm-svn: 92452
2010-01-03 18:14:24 +00:00
Chris Lattner
49cda26f7e
add PR#
...
llvm-svn: 92451
2010-01-03 18:10:58 +00:00
Chris Lattner
7246a69d2b
differences between two blockaddress's don't cause a
...
global variable initializer to require relocations.
llvm-svn: 92450
2010-01-03 18:09:40 +00:00
Chris Lattner
eb68b810a8
pull my debug hooks out, I'm done with this xform for now.
...
llvm-svn: 92446
2010-01-03 06:58:48 +00:00
Nick Lewycky
ebb78c871c
Small cleanups, refactor some duplicated code into a single method. No
...
functionality change.
llvm-svn: 92445
2010-01-03 04:39:07 +00:00