Dale Johannesen
516867fd79
Move dbg_value generation to target-independent FastISel,
...
as X86 is currently the only FastISel target. Per review.
llvm-svn: 97255
2010-02-26 20:01:55 +00:00
Dale Johannesen
23f606aa91
Further constify MDNode* references.
...
llvm-svn: 97252
2010-02-26 19:39:56 +00:00
Dale Johannesen
53dbd67b19
Add type printing for Metadata pseudo.
...
llvm-svn: 97251
2010-02-26 19:38:59 +00:00
Bob Wilson
139fdbd4d2
Move the EnableFullLoadPRE flag from a separate command-line option to an
...
argument of createGVNPass and set it automatically for -O3.
llvm-svn: 97245
2010-02-26 19:09:47 +00:00
Sanjiv Gupta
7ede252650
disable-mem2reg and disable-gvn options should not be used by the driver.
...
llvm-svn: 97236
2010-02-26 18:38:44 +00:00
Bob Wilson
cf20a07501
Remove unused "NoPRE" parameter in GVN and createGVNPass().
...
llvm-svn: 97235
2010-02-26 18:35:19 +00:00
Chris Lattner
2a0ccfc916
pass in more section kinds, enough to get the .align 0x90
...
stuff to emit optimal nops in the right places.
llvm-svn: 97233
2010-02-26 18:32:26 +00:00
Sanjiv Gupta
487b119dc9
The cloner has nothing to do if any of the main or ISR entrypoints are not
...
present in the module.
llvm-svn: 97232
2010-02-26 18:32:18 +00:00
Chris Lattner
3832b527d8
fix PR6435 another bug from the MallocInst elimination work.
...
llvm-svn: 97231
2010-02-26 18:23:13 +00:00
Jeffrey Yasskin
96dee852f2
Set svn:keywords property on docs/Packaging.html.
...
llvm-svn: 97230
2010-02-26 18:07:00 +00:00
Jeffrey Yasskin
52214fbeeb
Add to the packaging advice.
...
llvm-svn: 97229
2010-02-26 18:03:43 +00:00
Sanjiv Gupta
8a971a1dc5
Reapply things reverted back in 97220, with the fixed test case.
...
llvm-svn: 97228
2010-02-26 17:59:28 +00:00
Dan Gohman
e382448355
movl is a cheaper way to materialize 0 without clobbering EFLAGS than movabsq.
...
llvm-svn: 97227
2010-02-26 16:49:27 +00:00
Richard Osborne
fe30a8a2c1
Fix XCoreTargetLowering::isLegalAddressingMode() to handle VoidTy.
...
Previously LoopStrengthReduce would sometimes be unable to find
a legal formula, causing an assertion failure.
llvm-svn: 97226
2010-02-26 16:44:51 +00:00
Chandler Carruth
78f5a17a0c
Revert r97211 and r97213 to get the build green again.
...
llvm-svn: 97220
2010-02-26 08:43:09 +00:00
Chris Lattner
594d027cdb
add some helpful comments to the emitter
...
llvm-svn: 97219
2010-02-26 08:15:02 +00:00
Chris Lattner
ae14b0d790
switch from my nice hashtable based merging solution to a
...
gross little neighbor merging implementation. This one has
the benefit of not violating the ordering of patterns, so it
generates code that passes tests again.
llvm-svn: 97218
2010-02-26 08:08:41 +00:00
Chris Lattner
c84d763dfb
fix same bug in CheckChainCompatibleMatcher::isEqualImpl
...
llvm-svn: 97217
2010-02-26 08:06:02 +00:00
Chris Lattner
a26437c8f2
fix a nasty bug in CheckTypeMatcher::isEqualImpl
...
llvm-svn: 97216
2010-02-26 08:05:36 +00:00
Chris Lattner
938c57ccc6
finish off the factoring optimization along the lines of the
...
current design. This generates a matcher that successfully
runs, but it turns out that the factoring we're doing violates
the ordering of patterns, so we end up matching (e.g.) movups
where we want movaps. This won't due, but I'll address this in
a follow on patch. It's nice to not be on by default yet! :)
llvm-svn: 97215
2010-02-26 07:36:37 +00:00
Chris Lattner
6f18300453
add a new setNumChildren method for resizing scopes. Tweak getHash() so
...
that we never return a tombstone value, which (thankfully) triggers an
assert in densemap.
llvm-svn: 97214
2010-02-26 07:35:27 +00:00
Sanjiv Gupta
56ab10dfb2
Currently in LLVM, names of libcalls are assigned during TargetLowering
...
object construction. There is no provision to change them when the
code for a function generated.
So we have to change these names while printing assembly.
llvm-svn: 97213
2010-02-26 07:31:15 +00:00
Chris Lattner
01f5df01bf
fix the matcher in the presence of multiple scopes: we need to save
...
and restore the entire matcher stack by value. This is because children
we're testing could do moveparent or other things besides just
scribbling on additions to the stack.
llvm-svn: 97212
2010-02-26 07:28:20 +00:00
Sanjiv Gupta
7caf38490a
Before converting an operand to mem, check if it is legal to do so.
...
llvm-svn: 97211
2010-02-26 07:27:35 +00:00
Chris Lattner
8a60e7080e
this file lacks a run line!
...
llvm-svn: 97208
2010-02-26 02:40:57 +00:00
Dan Gohman
487127ce68
Fix a typo.
...
llvm-svn: 97206
2010-02-26 02:15:17 +00:00
Dan Gohman
e794389ad0
Delete a bunch of redundant predicates.
...
llvm-svn: 97201
2010-02-26 01:14:30 +00:00
Bill Wendling
720095c22c
Fix comments.
...
llvm-svn: 97200
2010-02-26 01:12:52 +00:00
Jeffrey Yasskin
d6401732f5
Give packagers some advice about how to build LLVM so it's useful to
...
the most users.
llvm-svn: 97198
2010-02-26 00:54:42 +00:00
Bill Wendling
173d797171
Add another (and hopefully the last) exception case, where once we recalculate
...
the alignment requirement, if it no longer makes the TType base offset overflow
into extra bytes, then we need to pad to those bytes ourselves.
llvm-svn: 97196
2010-02-26 00:43:54 +00:00
Bill Wendling
6c6c5e70e3
And should use the correct variable.
...
llvm-svn: 97193
2010-02-26 00:24:25 +00:00
Bill Wendling
30d82f42c4
Got assertion check backwards.
...
llvm-svn: 97192
2010-02-26 00:22:42 +00:00
Bill Wendling
788d3707a8
Catch a corner case where adding the padding to the "TType base offset" field
...
will eliminate the need for padding in the "Call site table length". E.g., if
we have this:
GCC_except_table1:
Lexception1:
.byte 0xff ## @LPStart Encoding = omit
.byte 0x9b ## @TType Encoding = indirect pcrel sdata4
.byte 0x7f ## @TType base offset
.byte 0x03 ## Call site Encoding = udata4
.byte 0x89 ## Call site table length
with padding of 1. We want to emit the padding like this:
GCC_except_table1:
Lexception1:
.byte 0xff ## @LPStart Encoding = omit
.byte 0x9b ## @TType Encoding = indirect pcrel sdata4
.byte 0xff ## @TType base offset
.space 1,0 ## Padding
.byte 0x03 ## Call site Encoding = udata4
.byte 0x89 ## Call site table length
and not with padding on the "Call site table length" entry.
llvm-svn: 97183
2010-02-25 23:52:44 +00:00
Dan Gohman
f433645431
Fix a few more typos.
...
llvm-svn: 97182
2010-02-25 23:51:27 +00:00
Dan Gohman
72d455709c
Fix a typo.
...
llvm-svn: 97181
2010-02-25 23:41:41 +00:00
John Criswell
a96b100871
Added SAFECode (safecode) to the list of projects to automatically configure.
...
llvm-svn: 97179
2010-02-25 22:57:19 +00:00
Chris Lattner
8cb1dc746d
rewrite OptimizeGlobalAddressOfMalloc to fix PR6422, some bugs
...
introduced when mallocinst was eliminated.
llvm-svn: 97178
2010-02-25 22:33:52 +00:00
Daniel Dunbar
e701a907f2
tests: Propogate the HOME environment variable through to tests. I'm ambivalent
...
about this, but it can be useful for users who use ccache, since the LLVMC tests
are fond of calling gcc.
llvm-svn: 97171
2010-02-25 22:09:09 +00:00
Bill Wendling
25090c690a
Fix HTML.
...
llvm-svn: 97170
2010-02-25 21:23:24 +00:00
Bill Wendling
dd2bd801a2
Make comment more meaningful.
...
llvm-svn: 97169
2010-02-25 21:19:47 +00:00
Dan Gohman
17447493ea
Fix ExpandVectorBuildThroughStack for the case where the
...
operands are themselves vectors. Based on a patch by
Micah Villmow for PR6338.
llvm-svn: 97165
2010-02-25 20:30:49 +00:00
Johnny Chen
47fd2a4774
Added the following 32-bit Thumb instructions for disassembly only: SMC, RFE,
...
and SRS.
llvm-svn: 97164
2010-02-25 20:25:24 +00:00
Johnny Chen
8737e46553
Added the 32-bit Thumb instructions (BXJ) for disassembly only.
...
llvm-svn: 97163
2010-02-25 19:05:29 +00:00
Chris Lattner
e4b5559cf8
change the scope node to include a list of children to be checked
...
instead of to have a chained series of scope nodes. This makes
the generated table smaller, improves the efficiency of the
interpreter, and make the factoring optimization much more
reasonable to implement.
llvm-svn: 97160
2010-02-25 19:00:39 +00:00
Johnny Chen
b05edcba36
Added the 32-bit Thumb instructions (MRS and MSR) for disassembly only.
...
llvm-svn: 97159
2010-02-25 18:46:43 +00:00
Kevin Enderby
11cce486ac
This is a patch to the assembler frontend to detect when aligning a text
...
section with TextAlignFillValue and calls EmitCodeAlignment() instead of
calling EmitValueToAlignment(). This allows x86 assembly code to be aligned
with optimal nops.
llvm-svn: 97158
2010-02-25 18:46:04 +00:00
Dan Gohman
c4d2315616
stkrc is gone.
...
llvm-svn: 97156
2010-02-25 18:18:49 +00:00
Dan Gohman
ab316457bb
Add the union keyword.
...
llvm-svn: 97155
2010-02-25 18:17:58 +00:00
Dan Gohman
1cb8720346
Merge the advanced getelementptr FAQ into the regular
...
getelementptr FAQ.
llvm-svn: 97154
2010-02-25 18:16:03 +00:00
Daniel Dunbar
7448368e5b
Fix TextAlignFillValue in a few places
...
llvm-svn: 97151
2010-02-25 18:07:10 +00:00