1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 20:43:44 +02:00
Commit Graph

51715 Commits

Author SHA1 Message Date
Dan Gohman
a3ab9b3b9e Convert a few more opt | llvm-dis to opt -S.
llvm-svn: 81261
2009-09-08 22:41:33 +00:00
Chris Lattner
7aff10755c filecheckize some tests
llvm-svn: 81259
2009-09-08 22:38:46 +00:00
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