Dan Gohman
c95df8b6d8
Use opt -S instead of piping bitcode output through llvm-dis.
...
llvm-svn: 81257
2009-09-08 22:34:10 +00:00
Dan Gohman
35984a8849
Use MemoryBuffer::getBufferIdentifier() in the AsmPrinter instead
...
of requiring a name be passed in. This makes it use "<stdin>"
instead of "-" and makes it more consistent with the Bitcode reader.
llvm-svn: 81256
2009-09-08 22:20:35 +00:00
Mikhail Glushenkov
7c0f06c19e
This should unbreak the build on 64-bit Linux.
...
llvm-svn: 81252
2009-09-08 20:31:27 +00:00
Owen Anderson
b32b599081
Fix PR4909, patch by Jakub Staszak.
...
llvm-svn: 81250
2009-09-08 19:53:15 +00:00
Mikhail Glushenkov
eaf0f7f20b
Const-correctness.
...
llvm-svn: 81249
2009-09-08 19:51:39 +00:00
Mikhail Glushenkov
b02519c95d
Since Program is basically a PID, it should be copyable.
...
llvm-svn: 81248
2009-09-08 19:51:12 +00:00
Mikhail Glushenkov
d5ee80a911
Get rid of the Pid_ member in the Program class.
...
llvm-svn: 81247
2009-09-08 19:50:55 +00:00
Mikhail Glushenkov
bd38dc207a
Add a Kill() function to the Program class.
...
llvm-svn: 81246
2009-09-08 19:50:27 +00:00
Chris Lattner
7e056a9740
another typo
...
llvm-svn: 81243
2009-09-08 19:45:34 +00:00
Evan Cheng
3a839afc42
Do not specify -mmacosx-version-min if building for arm-apple-darwin.
...
llvm-svn: 81240
2009-09-08 18:52:20 +00:00
Chris Lattner
5caba6ecdc
remove an extremely dubious instcombine transformation of
...
extractelement(load).
llvm-svn: 81239
2009-09-08 18:48:01 +00:00
Devang Patel
55eb4bffab
Remove dead code.
...
llvm-svn: 81235
2009-09-08 18:14:36 +00:00
Dan Gohman
84b8534266
Trim unnecessary declarations.
...
llvm-svn: 81227
2009-09-08 17:03:05 +00:00
Dan Gohman
8d84372836
Change these tests to feed the assembly files to opt directly, instead
...
of using llvm-as, now that opt supports this.
llvm-svn: 81226
2009-09-08 16:50:01 +00:00
Daniel Dunbar
c3a4c4c602
Fix may-be-used-uninitialized warning.
...
llvm-svn: 81223
2009-09-08 16:14:54 +00:00
Dan Gohman
ac3bbe614d
llvm-as is no longer needed here, now that opt can read assembly
...
files directly.
llvm-svn: 81222
2009-09-08 15:52:56 +00:00
Dan Gohman
cdaa08e706
Re-apply r80926, with fixes: keep the domtree informed of new blocks
...
that get created during loop unswitching, and fix SplitBlockPredecessors'
LCSSA updating code to create new PHIs instead of trying to just move
existing ones.
Also, optimize Loop::verifyLoop, since it gets called a lot. Use
searches on a sorted list of blocks instead of calling the "contains"
function, as is done in other places in the Loop class, since "contains"
does a linear search. Also, don't call verifyLoop from LoopSimplify or
LCSSA, as the PassManager is already calling verifyLoop as part of
LoopInfo's verifyAnalysis.
llvm-svn: 81221
2009-09-08 15:45:00 +00:00
Anton Korobeynikov
0b3a620d60
Add NEON 'laned' operations. This fixes another bunch of gcc testsuite fails and
...
makes the code faster.
llvm-svn: 81220
2009-09-08 15:22:32 +00:00
Chris Lattner
103aabbae7
fix a couple typos pointed out by edwin and duncan
...
llvm-svn: 81219
2009-09-08 15:13:16 +00:00
Dan Gohman
0a1df51219
Unbreak these tests. Chris, please verify that these changes are intended.
...
llvm-svn: 81217
2009-09-08 14:14:24 +00:00
Richard Pennington
5b60d19ab9
Add source debug information to the Sparc code generator.
...
llvm-svn: 81215
2009-09-08 12:47:30 +00:00
Nicolas Geoffray
d7d08596d6
When emitting a label for a PostCall safe point, the machine
...
instruction to insert before can be end(). getDebugLoc on
end() returns an invalid value, therefore use the debug
loc of the call instruction, and give it to InsertLabel.
llvm-svn: 81207
2009-09-08 07:39:27 +00:00
Nicolas Geoffray
1f17612505
Also emit a label for TargetInstrInfo::GC_LABEL.
...
llvm-svn: 81206
2009-09-08 07:36:18 +00:00
Anton Korobeynikov
a3c4db1161
Unbreak
...
llvm-svn: 81205
2009-09-08 07:30:03 +00:00
Evan Cheng
e1047f16e4
When remat'ing and destination virtual register has a sub-register index. Make sure the sub-register class matches the register class of the remat'ed instruction definition register class.
...
llvm-svn: 81204
2009-09-08 06:39:07 +00:00
Chris Lattner
bcf8dbfbcb
Print "X-42" instead of "X+-42".
...
llvm-svn: 81203
2009-09-08 06:37:35 +00:00
Chris Lattner
a07820641d
make formatting of expressions more closely match the existing asmprinter.
...
llvm-svn: 81202
2009-09-08 06:34:07 +00:00
Chris Lattner
141b519df0
tidy whitespace.
...
llvm-svn: 81201
2009-09-08 06:27:48 +00:00
Chris Lattner
6c02945d93
disable some irrelevant eh emission
...
llvm-svn: 81200
2009-09-08 06:26:40 +00:00
Chris Lattner
ca44919aac
add support for some missing modifiers on jumptable/constant pool entries.
...
llvm-svn: 81199
2009-09-08 06:25:12 +00:00
Chris Lattner
893fbc4fec
add a bunch more evil lowering code to work around various :subreg32 modifiers
...
in the .td files. This gets us down to 18 failures in codegen/x86 with the
new asmprinter.
llvm-svn: 81198
2009-09-08 06:19:15 +00:00
Daniel Dunbar
ca1a6d222f
lit needs bash for tcl-as-sh execution, we use set -o pipefail.
...
llvm-svn: 81197
2009-09-08 06:08:07 +00:00
Chris Lattner
ef96a8b64d
ADd support for "lowering" the X86::MOVZX16rr8/X86::MOVZX16rm8
...
subreg32 modifiers.
llvm-svn: 81196
2009-09-08 06:03:07 +00:00
Chris Lattner
8accd1ddcf
add a hack to lower MOV16r0 to MOV32r0 in MCInstLower, eliminating
...
the problem with subreg32 modifiers. This gets all of Olden working
with the new asmprinter.
llvm-svn: 81195
2009-09-08 05:49:25 +00:00
Daniel Dunbar
57ad7988fd
Fix typo that worked on python 2.6.
...
Also, fix unit tests.
llvm-svn: 81194
2009-09-08 05:46:28 +00:00
Nick Lewycky
9cbe7a0090
Hoist out the test+insert to CheckedTypes. This doesn't seem to affect
...
performance.
llvm-svn: 81193
2009-09-08 05:46:15 +00:00
Daniel Dunbar
e82e000211
Fix a refactoro.
...
llvm-svn: 81192
2009-09-08 05:37:51 +00:00
Daniel Dunbar
1d03c5c8a7
Add 'lit' support for llvm tests.
...
- This adds 'make check-lit' from the top-level Makefile.
llvm-svn: 81191
2009-09-08 05:31:44 +00:00
Daniel Dunbar
640436d7af
Add 'lit' testing tool.
...
- make install && man $(llvm-config --prefix)/share/man/man1/lit.1 for more
information.
llvm-svn: 81190
2009-09-08 05:31:18 +00:00
Chris Lattner
a0271f52a5
llvm::cerr is gone.
...
llvm-svn: 81189
2009-09-08 05:15:50 +00:00
Chris Lattner
c6552ef06f
update this to use raw_ostream
...
llvm-svn: 81188
2009-09-08 05:14:44 +00:00
Chris Lattner
2e9f3b2865
fix PR4767, a crash because fp stackifier visited blocks in
...
depth first order, so it wouldn't process unreachable blocks.
When compiling at -O0, late dead block elimination isn't done
and the bad instructions got to isel.
llvm-svn: 81187
2009-09-08 04:55:44 +00:00
Chris Lattner
24df64e520
remove a turd
...
llvm-svn: 81186
2009-09-08 03:47:41 +00:00
Chris Lattner
12d0bc749f
instcombine transforms vector loads that are only used by
...
extractelement operations into a bitcast of the pointer,
then a gep, then a scalar load. Disable this when the vector
only has one element, because it leads to infinite loops in
instcombine (PR4908).
This transformation seems like a really bad idea to me, as it
will likely disable CSE of vector load/stores etc and can be
better done in the code generator when profitable. This
goes all the way back to the first days of packed types,
r25299 specifically.
I'll let those people who care about the performance of vector
code decide what to do with this.
llvm-svn: 81185
2009-09-08 03:44:51 +00:00
Chris Lattner
b3778be4fa
fix pasto
...
llvm-svn: 81184
2009-09-08 03:39:55 +00:00
Chris Lattner
042b1f3367
add getVectorOperand/getIndexOperand accessors to ExtractElementInst.
...
Fix some const correctness problems in SelectInst.
llvm-svn: 81183
2009-09-08 03:32:53 +00:00
Nick Lewycky
8d3fc4bfab
Simplify from my last change. Assert1 is a macro that makes its caller return,
...
so "Assert1(isa<>); cast<>" is a valid idiom.
Actually check the PHI node's odd-numbered operands for BasicBlock-ness, like
the comment said.
llvm-svn: 81182
2009-09-08 02:02:39 +00:00
Dan Gohman
8f7b263087
Fix an abort on a store of an empty struct member. getValue returns
...
null in the case of an empty struct, so don't try to call getNumValues
on it.
llvm-svn: 81180
2009-09-08 01:44:02 +00:00
Nick Lewycky
5536fa68c5
Verify types. Invalid types can be constructed when assertions are off.
...
Make the verifier more robust by avoiding unprotected cast<> calls. Notably,
Assert1(isa<>); cast<> is not safe as Assert1 does not terminate the program.
llvm-svn: 81179
2009-09-08 01:23:52 +00:00
Chris Lattner
fb09f6e5ea
fix PR4915, a crash in -debug mode.
...
llvm-svn: 81177
2009-09-08 01:22:54 +00:00