Sanjiv Gupta
36a9c8f0b3
Build shared lib instead of an archive.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84764 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 17:27:23 +00:00
Jim Grosbach
3325537682
Cleanup of frame index scavenging. Better code flow and more accurately
...
handles T2 and ARM use cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84761 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 15:26:21 +00:00
Oscar Fuentes
2ba7a90126
Two corrections for docs/CMake.html.
...
Patch by Victor Zverovich!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84759 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 13:22:20 +00:00
Torok Edwin
0739bd0ab2
Fix PR5262: when folding select into PHI, make sure all operands are available
...
in the PHI's Basic Block. This uses a conservative approach, because we don't
have dominator info in instcombine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84754 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 10:49:00 +00:00
Sanjiv Gupta
4e4bba5c80
Add a pass to overlay pic16 data sections for function frame and automatic
...
variables. This pass can be invoked by llvm-ld or opt to traverse over the call graph
to detect what function frames and their automatic variables can be overlaid.
Currently this builds an archive , but needs to be changed to a loadable module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84753 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 10:42:44 +00:00
Sanjiv Gupta
db1d9dbdd7
Added more options to mcc16 driver.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84752 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 10:38:59 +00:00
Evan Cheng
2095659a85
Match more patterns to movt.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84751 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 08:15:52 +00:00
Evan Cheng
5affca0763
Need a comma after imp-use.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84749 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 07:56:02 +00:00
Douglas Gregor
7bb3862895
De-bork CMake build
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84744 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 06:01:54 +00:00
Chris Lattner
69412f81fc
Set comment string, patch by Johnny Chen!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84743 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 05:07:57 +00:00
Chris Lattner
a52fce49eb
make GVN work better when TD is not around:
...
"In the existing code, if the load and the value to replace it with are
of different types *and* target data is available, it tries to use the
target data to coerce the replacement value to the type of the load.
Otherwise, it skips all effort to handle the type mismatch and just
feeds the wrongly-typed replacement value to replaceAllUsesWith, which
triggers an assertion.
The patch replaces it with an outer if checking for type mismatch, and
an inner if-else that checks whether target data is available and, if
not, returns false rather than trying to replace the load."
Patch by Kenneth Uildriks!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84739 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 04:11:19 +00:00
Chris Lattner
1ce75ef5ef
tidy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84738 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 04:10:24 +00:00
Bob Wilson
b3c8359360
Fix some more NEON instruction encoding problems.
...
Thanks to Johnny Chen for discovering the problem.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84732 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 02:27:20 +00:00
Devang Patel
08e4339310
Do not remove dead metadata for now.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84731 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 02:21:34 +00:00
Bob Wilson
507df402b0
Leave some NEON instruction encoding bits unspecified instead of setting
...
a default value of zero. This is important for decoding the instructions.
Patch by Johnny Chen, with some changes from me, too.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84730 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 02:15:46 +00:00
Mikhail Glushenkov
4e6138758d
Clarify documentation on multi_val options.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84729 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 02:13:52 +00:00
Mikhail Glushenkov
4858a1d51e
Implement any_[not_]empty and list versions of switch_on and [not_]empty.
...
Useful for OptionPreprocessor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84728 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 02:13:13 +00:00
Dan Gohman
c1ae8c9b8f
Revert r84658 and r84691. They were causing llvm-gcc bootstrap to fail.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84727 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 01:44:44 +00:00
Chris Lattner
7d26443bb7
IPSCCP is missing stuff.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84725 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 01:10:37 +00:00
Bill Wendling
ce1379f72c
This is passing on Darwin PPC.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84723 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:51:40 +00:00
Jeffrey Yasskin
4cdc5bb707
Delete the MacOSJITEventListener per echristo's request. It was disabled by
...
default and didn't work anyway.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84720 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:43:48 +00:00
Anton Korobeynikov
12ddf139ce
Add note
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84713 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:14:15 +00:00
Anton Korobeynikov
514200d5ef
Be crazy and assert in case of unsupported modifier passed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84712 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:13:58 +00:00
Anton Korobeynikov
0a2e206b40
Handle external symbols
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84711 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:13:42 +00:00
Anton Korobeynikov
8ecaf237e0
Distinguish between pcrel imm operands and 'normal' ones. Fix fixes gross weirdness of asmprinting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84710 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:13:25 +00:00
Anton Korobeynikov
dc2165e18e
Add basic block operands & jump kinds
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84709 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:13:05 +00:00
Anton Korobeynikov
3d6e560eef
Ignore all implicit reg operands
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84708 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:12:44 +00:00
Anton Korobeynikov
efa236f40d
Add a workaround for different memops prefixes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84707 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:12:27 +00:00
Anton Korobeynikov
9b0b852698
Checkpoint MCInst printer. We (almostly) able to print global / JT / constpool entries
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84706 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:12:08 +00:00
Anton Korobeynikov
a3da7c3ca8
Add reg-imm tests
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84705 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:11:44 +00:00
Anton Korobeynikov
b5a921679f
Add simple operand printing stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84704 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:11:27 +00:00
Anton Korobeynikov
13853e233b
Add experimental MSP430 MCInstLowering stuff
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84703 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:11:08 +00:00
Anton Korobeynikov
1074aae0d1
Wire up MSP430 printMCInst() method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84702 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:10:47 +00:00
Anton Korobeynikov
680dec703c
Add MSP430 InstPrinter stub
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84701 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:10:30 +00:00
Anton Korobeynikov
51f3f9a8a7
Use proper target data
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84700 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-21 00:10:00 +00:00
David Goodwin
7441d14873
Respect src register allocation requirements when breaking anti-dependencies. Remove some dead code.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84691 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 22:50:43 +00:00
Devang Patel
d9723e9a28
Cosmetic changes.
...
s/validName/isValidName/g
s/with an Instruction/to an Instruction/g
s/RegisterMDKind/registerMDKind/g
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84689 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 22:50:27 +00:00
Daniel Dunbar
a7cc65283a
Fix -Asserts warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84687 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 22:10:05 +00:00
Anton Korobeynikov
2bcf60a9cc
Fix invalid for vector types fneg(bitconvert(x)) => bitconvert(x ^ sign)
...
transform.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84683 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 21:37:45 +00:00
Lang Hames
3fd7a68ba9
Oops. Backing out 84681 - needs to wait for the indexing patch.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84682 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 21:28:22 +00:00
Lang Hames
67f25669db
Added some debugging output to pre-alloc splitting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84681 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 21:25:13 +00:00
Chris Lattner
d0d3cbb362
add a real testcase for PR4313
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84676 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 21:04:26 +00:00
Chris Lattner
82a39b3e14
add a test similar to that needed for PR4313, but that doesn't
...
fail without the patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84675 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 21:00:47 +00:00
Chris Lattner
b5b1e7738b
the date on this testcase is wrong, it is unreduced, and it passes without the fix for PR4313.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84674 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:57:58 +00:00
Dan Gohman
eed9e5b833
Fix another place that calls Loop::contains a lot to construct a sorted
...
container of the blocks and do efficient lookups. This makes
isLoopSimplifyForm much faster on large loops, fixing a significant
compile-time issue in builds with assertions enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84673 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:41:13 +00:00
Chris Lattner
f7d3570d8e
merge and filecheckize
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84672 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:39:43 +00:00
Chris Lattner
7f2076023a
merge two tests and convert to filecheck.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84671 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:33:46 +00:00
Jim Grosbach
3229b0bcf1
Disable by default while debugging
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84669 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:31:31 +00:00
Chris Lattner
88a8624f8e
alternate fix for PR5258 which avoids worklist problems, with reduced testcase.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84667 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:27:49 +00:00
Jim Grosbach
18ed9c9a2b
add cmd line opt to disable frame index reuse for ARM and T2. debug aid.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84664 91177308-0d34-0410-b5e6-96231b3b80d8
2009-10-20 20:19:50 +00:00