1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
Commit Graph

48391 Commits

Author SHA1 Message Date
Evan Cheng
94967abfe3 Undo my brain cramp.
llvm-svn: 75290
2009-07-10 21:31:42 +00:00
David Greene
a60479705b Make changes suggested by Chris and eliminate newly-added raw_ostream
hooks as they're no longer needed.

The major change with this patch is to make formatted_raw_ostream usable
by any client of raw_ostream.

llvm-svn: 75283
2009-07-10 21:14:44 +00:00
Jeffrey Yasskin
4ada36ff60 Regenerate configure after r75279.
llvm-svn: 75280
2009-07-10 21:09:55 +00:00
Jeffrey Yasskin
4f8961d587 Add a --with-oprofile flag to configure, which uses OProfile's agent
library to tell it the addresses of JITted functions.  For a
particular program, this changes the opreport -l output from:

samples %    image name        symbol name
48182  98.9729 anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000) anon (tgid:19412 range:0x7f12ccaab000-0x7f12cdaab000)
11     0.0226  libstdc++.so.6.0.9    /usr/lib/libstdc++.so.6.0.9

to:

samples %    image name        symbol name
24565  60.7308 19814.jo        fib_left
15365  37.9861 19814.jo        fib_right
22     0.0544  ld-2.7.so       do_lookup_x

llvm-svn: 75279
2009-07-10 21:08:20 +00:00
Chris Lattner
1781e322d7 code model is never set to default.
llvm-svn: 75278
2009-07-10 21:03:06 +00:00
Chris Lattner
4b7ff8e0c0 fix indentation
llvm-svn: 75277
2009-07-10 21:01:59 +00:00
Chris Lattner
478fc8442b remove the now-dead TM argument to these methods.
llvm-svn: 75276
2009-07-10 21:00:45 +00:00
Chris Lattner
9c13214ee8 make PIC vs DynamicNoPIC be explicit in PICStyles.
llvm-svn: 75275
2009-07-10 20:58:47 +00:00
Chris Lattner
933108f921 some minor simplifications.
llvm-svn: 75274
2009-07-10 20:53:38 +00:00
Chris Lattner
9deef50410 add a couple of predicates to test for "stub style pic in PIC mode" and "stub style pic in dynamic-no-pic" mode.
llvm-svn: 75273
2009-07-10 20:47:30 +00:00
Dan Gohman
5749595b5b Remove ScalarEvolution::hasSCEV, which isn't being used, and which
breaks encapsulation. Also remove a dead prototype for setSCEV.

llvm-svn: 75272
2009-07-10 20:25:29 +00:00
Duncan Sands
f32be25f82 Avoid compiler warnings when assertions are turned off.
llvm-svn: 75269
2009-07-10 20:10:14 +00:00
Duncan Sands
fff8443450 Avoid compiler warnings if assertions turned off.
llvm-svn: 75267
2009-07-10 20:07:07 +00:00
Evan Cheng
7f57128609 CMOVxx doesn't swap operands which it's commuted.
llvm-svn: 75266
2009-07-10 19:26:57 +00:00
Evan Cheng
52ce32d097 Remove TargetInstrInfo::CommuteChangesDestination and added findCommutedOpIndices which returns the operand indices which are swapped (when applicable). This allows for some code clean up and future enhancements.
llvm-svn: 75264
2009-07-10 19:15:51 +00:00
Sanjiv Gupta
af27aae5b9 Link std.lib (.bc code) with llvm-ld.
Link devices.lib (processor specific variables) with mplink.

llvm-svn: 75263
2009-07-10 19:04:05 +00:00
Owen Anderson
565efa7c72 Fix unit tests.
llvm-svn: 75262
2009-07-10 18:58:29 +00:00
Chris Lattner
2bdd9c7807 convert test to use FileCheck, which is much more precise and faster than
the previous RUN lines.  Hopefully this will be an inspiration for future
tests :)

llvm-svn: 75261
2009-07-10 18:34:47 +00:00
Chris Lattner
c2ed857dfb add missing *, patch by Peter O'Gorman!
llvm-svn: 75259
2009-07-10 18:28:19 +00:00
Owen Anderson
add7163c0d Push LLVMContext through the TypeBuilder API. There are no users for this in-tree, so I can't really test it.
If you're using this, and it's broken, please send patches.

llvm-svn: 75257
2009-07-10 18:10:10 +00:00
David Greene
c6a6fb7906 Eliminate an unnecessary include.
llvm-svn: 75256
2009-07-10 17:55:38 +00:00
Owen Anderson
7076f1ffb7 Push LLVMContext through the PatternMatch API.
llvm-svn: 75255
2009-07-10 17:35:01 +00:00
David Goodwin
1a6f4f6f8d Predicate VFP instructions on HasVFP2 instead of IsARM. This allows VFP instructions with thumb-2.
llvm-svn: 75254
2009-07-10 17:03:29 +00:00
Dan Gohman
404a92e330 Generalize ScalarEvolution's cast-folding code to support more kinds
of loops. Add several new functions to for working with ScalarEvolution's
add-hoc value-range analysis functionality.

llvm-svn: 75252
2009-07-10 16:42:52 +00:00
Owen Anderson
426ad99bf3 Update for GlobalVariables ctor change.
llvm-svn: 75251
2009-07-10 16:42:19 +00:00
David Goodwin
527180b7b0 t2LDM_RET does not fall-through.
llvm-svn: 75250
2009-07-10 15:33:46 +00:00
Duncan Sands
eaa9975d59 Add Thumb2ITBlockPass.cpp to CMakeLists.txt, fixing
the cmake build.

llvm-svn: 75246
2009-07-10 08:31:50 +00:00
Chris Lattner
e5b9e93e19 make this more like printOperand. Perhaps some merging will happen
tomorrow.

llvm-svn: 75245
2009-07-10 07:50:52 +00:00
Chris Lattner
6097f82e18 simplify fast isel by using ClassifyGlobalReference. This
elimiantes the last use of GVRequiresExtraLoad, so delete it.

llvm-svn: 75244
2009-07-10 07:48:51 +00:00
Chris Lattner
7c038a2b3c eliminate GVRequiresRegister, replacing it with predicates we
need for other purposes.

llvm-svn: 75243
2009-07-10 07:38:24 +00:00
Chris Lattner
e4e0c73ed0 change a bunch of logic in LowerGlobalAddress to leverage the work
done in ClassifyGlobalReference instead of reconstructing the info
awkwardly.

llvm-svn: 75240
2009-07-10 07:34:39 +00:00
Chris Lattner
a785e01d31 add a predicate to determine if a global var reference requires a
PIC-base to be added in.

llvm-svn: 75238
2009-07-10 07:33:30 +00:00
Chris Lattner
0cae8c7845 move some classification logic around. Now GVRequiresExtraLoad
is just a trivial wrapper around "ClassifyGlobalReference", which
stole a ton of logic from LowerGlobalAddress.

llvm-svn: 75237
2009-07-10 07:20:05 +00:00
Chris Lattner
4e8de888f2 change isGlobalStubReference to take target flags instead of a MachineOperand.
llvm-svn: 75236
2009-07-10 06:29:59 +00:00
Chris Lattner
c4e0e9c987 convert some late code (called by regalloc and code emission)
to use isGlobalStubReference instead of GVRequiresExtraLoad
(which should really be part of isel).

llvm-svn: 75234
2009-07-10 06:07:08 +00:00
Chris Lattner
a607a9c046 add a new predicate method that says whether a GlobalValue
MachineOperand is a reference to a stub, not a reference to the
global variable itself.  Look no context needed!

llvm-svn: 75233
2009-07-10 06:06:17 +00:00
Chris Lattner
41fccd30b7 GVRequiresExtraLoad is now never used for calls, simplify it based on this.
llvm-svn: 75232
2009-07-10 05:52:02 +00:00
Chris Lattner
832a724072 actually, just eliminate PCRelGVRequiresExtraLoad. It makes the code
more complex and slow than just directly testing what we care about.

llvm-svn: 75231
2009-07-10 05:48:03 +00:00
Chris Lattner
2161376696 There is only one case where GVRequiresExtraLoad returns true for calls:
split its handling out to PCRelGVRequiresExtraLoad, and simplify code
based on this.

llvm-svn: 75230
2009-07-10 05:45:15 +00:00
Chris Lattner
2e5e403f53 the "isDirectCall" operand of GVRequiresRegister is always false, eliminate it.
llvm-svn: 75229
2009-07-10 05:37:11 +00:00
Chris Lattner
faa8001b62 split call handling out of X86SelectAddress into X86SelectCallAddress
llvm-svn: 75228
2009-07-10 05:33:42 +00:00
Chris Lattner
fb8ee5d85a convert a helper method to be a static function instead of a
template.  Also convert it to take a MachineOperand instead of a GV*

llvm-svn: 75227
2009-07-10 05:27:43 +00:00
Evan Cheng
e25ef2e60e 80 col violation.
llvm-svn: 75226
2009-07-10 05:20:19 +00:00
Evan Cheng
6e276f4376 More info about Thumb1 predication support.
llvm-svn: 75220
2009-07-10 02:10:17 +00:00
Evan Cheng
74f5327e53 We don't need separate thumb1 instructions tADDSi3 etc. for addc and subc. The "normal" version always modify condition register CPSR so we should just use def : pat to match to the same instructions.
llvm-svn: 75219
2009-07-10 02:09:04 +00:00
Evan Cheng
24f2aefc87 Add a thumb2 pass to insert IT blocks.
llvm-svn: 75218
2009-07-10 01:54:42 +00:00
Evan Cheng
4d2678d1ff Move isPredicated from .cpp to .h
llvm-svn: 75217
2009-07-10 01:38:27 +00:00
Owen Anderson
1500792c2c Finish pushing LLVMContext through the IRBuilder/ConstantFolder interface.
llvm-svn: 75213
2009-07-10 00:49:53 +00:00
Evan Cheng
5bdb67db63 80 col violation.
llvm-svn: 75212
2009-07-10 00:45:16 +00:00
David Greene
a3a442fd55 Fix #include specification.
llvm-svn: 75208
2009-07-10 00:34:39 +00:00