Evan Cheng
52159ba00a
Revert 89011. Buildbot thinks it might be breaking stuff.
...
llvm-svn: 89076
2009-11-17 09:20:28 +00:00
Nick Lewycky
70113e8a1b
Remove VISIBILITY_HIDDEN from the classes in this directory. Fixes bug 5507.
...
llvm-svn: 89075
2009-11-17 09:17:08 +00:00
Duncan Sands
bebe645914
Following a suggestion of Daniel Dunbar, stop people passing the name
...
as the isSigned bool to CreateIntCast by having this resolve to a call
to a private method, rather than by using a gcc attribute.
llvm-svn: 89067
2009-11-17 08:34:52 +00:00
Nick Lewycky
549b6439f3
Revert r88939.
...
llvm-svn: 89066
2009-11-17 08:11:44 +00:00
Nick Lewycky
f6d8788686
Fail less mysteriously; inform the user that their LLVM was not built with
...
libffi support and that the interpreter can't call external functions without
it. Patch by Timo Juhani Lindfors! Fixes PR5466.
llvm-svn: 89062
2009-11-17 07:52:09 +00:00
Lang Hames
2e0183a8a6
Fixed call to wrong constructor.
...
llvm-svn: 89059
2009-11-17 07:19:50 +00:00
Owen Anderson
b319694f75
Fix a race condition in the Timer class.
...
llvm-svn: 89056
2009-11-17 07:06:10 +00:00
Bill Wendling
dcecc143ae
Refactor the code that creates the "dot-label" difference. This may be used in
...
more than one place. No intended functionality change.
llvm-svn: 89024
2009-11-17 01:23:53 +00:00
Jim Grosbach
7fc73a45da
When moving a block for table jumps, make sure the prior block terminator
...
is analyzable so it can be updated. If it's not, be safe and don't move the
block.
llvm-svn: 89022
2009-11-17 01:21:04 +00:00
Jakob Stoklund Olesen
6ac8f7ec34
Enable -split-phi-edges by default
...
llvm-svn: 89021
2009-11-17 01:07:22 +00:00
Evan Cheng
6e4430374e
MOV64rm should be marked isReMaterializable.
...
llvm-svn: 89019
2009-11-17 00:55:55 +00:00
Dan Gohman
fc21555ca5
Remove the optimizations that convert BRCOND and BR_CC into
...
unconditional branches or fallthroghes. Instcombine/SimplifyCFG
should be simplifying branches with known conditions.
This fixes some problems caused by these transformations not
updating the MachineBasicBlock CFG.
llvm-svn: 89017
2009-11-17 00:47:23 +00:00
Devang Patel
04a40c8ff7
Remove debug info attached with an instruction.
...
llvm-svn: 89016
2009-11-17 00:47:06 +00:00
Jeffrey Yasskin
135f2adcbb
In GlobalVariable::setInitializer, assert that the initializer has the
...
right type.
llvm-svn: 89014
2009-11-17 00:43:13 +00:00
Evan Cheng
382a91041b
A few more instructions that should be marked re-materializable.
...
llvm-svn: 89011
2009-11-17 00:23:22 +00:00
Jim Grosbach
b123a9cbc0
Convert to FileCheck
...
llvm-svn: 89007
2009-11-17 00:20:26 +00:00
Jim Grosbach
2f09113304
Convert to FileCheck
...
llvm-svn: 89002
2009-11-17 00:03:38 +00:00
Jim Grosbach
299e4e76c4
Cleanup. Missed removing these when converting. Oops.
...
llvm-svn: 89001
2009-11-17 00:00:33 +00:00
Johnny Chen
d530046ed3
Set Rm bits of BX_RET to 0b1110 (R14); and set condition code bits of BRIND to
...
0b1110 (ALways). This is so that the disassembler decoder can distinguish among
BX_RET, BRIND, and BXr9.
llvm-svn: 89000
2009-11-16 23:57:56 +00:00
Dan Gohman
c2979de134
Fix this test - there don't appear to be any actual Reload Reuses
...
in this testcase.
llvm-svn: 88998
2009-11-16 23:49:55 +00:00
Dan Gohman
c35e84e1f5
Revert r87049, which was the workaround for the regression triggered
...
by the recent FixedStackPseudoSourceValue-related changes, now that
the specific bug that affected it is fixed, in r88954.
llvm-svn: 88997
2009-11-16 23:43:42 +00:00
Jeffrey Yasskin
9f05d972b7
Revert the test from r88984. It relies on being able to mmap 16GB of
...
address space (though it only uses a small fraction of that), and the
buildbots disallow that.
Also add a comment to the Makefile's ulimit line warning future
developers that changing it won't work.
llvm-svn: 88994
2009-11-16 23:32:30 +00:00
Jim Grosbach
95cf7fad36
Convert to FileCheck
...
llvm-svn: 88991
2009-11-16 23:19:29 +00:00
Dan Gohman
04717dcf0a
Initialize the new AsmPrinterFlags field to 0, fixing uses of
...
uninitialized memory.
llvm-svn: 88985
2009-11-16 22:49:38 +00:00
Jeffrey Yasskin
0f846dbb3e
Make X86-64 in the Large model always emit 64-bit calls.
...
The large code model is documented at
http://www.x86-64.org/documentation/abi.pdf and says that calls should
assume their target doesn't live within the 32-bit pc-relative offset
that fits in the call instruction.
To do this, we turn off the global-address->target-global-address
conversion in X86TargetLowering::LowerCall(). The first attempt at
this broke the lazy JIT because it can separate the movabs(imm->reg)
from the actual call instruction. The lazy JIT receives the address of
the movabs as a relocation and needs to record the return address from
the call; and then when that call happens, it needs to patch the
movabs with the newly-compiled target. We could thread the call
instruction into the relocation and record the movabs<->call mapping
explicitly, but that seems to require at least as much new
complication in the code generator as this change.
To fix this, we make lazy functions _always_ go through a call
stub. You'd think we'd only have to force lazy calls through a stub on
difficult platforms, but that turns out to break indirect calls
through a function pointer. The right fix for that is to distinguish
between calls and address-of operations on uncompiled functions, but
that's complex enough to leave for someone else to do.
Another attempt at this defined a new CALL64i pseudo-instruction,
which expanded to a 2-instruction sequence in the assembly output and
was special-cased in the X86CodeEmitter's emitInstruction()
function. That broke indirect calls in the same way as above.
This patch also removes a hack forcing Darwin to the small code model.
Without far-call-stubs, the small code model requires things of the
JITMemoryManager that the DefaultJITMemoryManager can't provide.
Thanks to echristo for lots of testing!
llvm-svn: 88984
2009-11-16 22:41:33 +00:00
Daniel Dunbar
f3784a8781
Don't build examples by default, use BUILD_EXAMPLES=1 to build them. The only utility of this is testing that we keep the examples up to date, I will just make the buildbots run with this flag.
...
llvm-svn: 88979
2009-11-16 22:38:00 +00:00
Daniel Dunbar
3a89c01296
Add "Unoptimized" build (NO_DEBUG_SYMBOLS=1 ENABLE_OPTIMIZED=1), for reducing
...
disk space, and increasing battery lifetime. :)
llvm-svn: 88978
2009-11-16 22:37:52 +00:00
Eric Christopher
3877235021
Fix unused variables warnings.
...
llvm-svn: 88977
2009-11-16 22:34:32 +00:00
Evan Cheng
78be20d62e
- Check memoperand alignment instead of checking stack alignment. Most load / store folding instructions are not referencing spill stack slots.
...
- Mark MOVUPSrm re-materializable.
llvm-svn: 88974
2009-11-16 21:56:03 +00:00
Devang Patel
aad93dd4c0
Revert r88939.
...
llvm-svn: 88973
2009-11-16 21:53:40 +00:00
David Greene
47e8728c22
Fix an expensive-checks error.
...
The Mask and LHSMask may not be of the same size, so don't do the
transformation if they're different.
llvm-svn: 88972
2009-11-16 21:52:23 +00:00
Jim Grosbach
2c6e8c5ccc
Make the pass class name more explicit.
...
llvm-svn: 88964
2009-11-16 21:13:22 +00:00
Jim Grosbach
736ee00309
make pass name a bit more clear
...
llvm-svn: 88961
2009-11-16 21:03:58 +00:00
Dan Gohman
838fa57091
Revert 88957. This file uses CodeGenOpt, which is defined in TargetMachine.h.
...
llvm-svn: 88959
2009-11-16 20:45:50 +00:00
Dan Gohman
9815fd7148
Remove an unnecessary #include.
...
llvm-svn: 88957
2009-11-16 20:41:12 +00:00
Dan Gohman
22377c8327
Sink a #include <map> to where it's actually needed.
...
llvm-svn: 88956
2009-11-16 20:40:47 +00:00
Dan Gohman
ca47376e90
Make PseudoSourceValue's classof recognize
...
FixedStackPseudoSourceValueVal, to respect this isa relationship.
llvm-svn: 88954
2009-11-16 20:40:06 +00:00
Dan Gohman
0679a637b3
Fix a typo in a comment.
...
llvm-svn: 88953
2009-11-16 20:35:59 +00:00
Jim Grosbach
f4abb1280a
Convert to FileCheck
...
llvm-svn: 88947
2009-11-16 20:04:15 +00:00
Lang Hames
6a5810c037
Added a testcase for PR5495.
...
llvm-svn: 88946
2009-11-16 20:03:13 +00:00
Rafael Espindola
6e1f7bb489
Add configure options for specifying where to look for libstdc++.
...
llvm-svn: 88943
2009-11-16 19:46:55 +00:00
Jim Grosbach
deee4fbd5d
Convert to FileCheck
...
llvm-svn: 88942
2009-11-16 19:46:46 +00:00
Bob Wilson
ead1392ff4
Fix a comment.
...
llvm-svn: 88940
2009-11-16 19:33:27 +00:00
Devang Patel
9263c9d854
Add VISIBILITY_HIDDEN marker.
...
llvm-svn: 88939
2009-11-16 19:20:48 +00:00
Jim Grosbach
62cd0707dd
Simplify thumb2 jump table adjustments. Remove unnecessary calculation and
...
usage of block sizes and offsets.
llvm-svn: 88935
2009-11-16 18:58:52 +00:00
Jim Grosbach
eef0542edc
clarify comment
...
llvm-svn: 88933
2009-11-16 18:55:47 +00:00
Bob Wilson
72925c0154
Fix some comments.
...
llvm-svn: 88932
2009-11-16 18:54:08 +00:00
Bob Wilson
eca4a0c2e4
Whitespace: be consistent with pointer syntax.
...
llvm-svn: 88929
2009-11-16 18:08:46 +00:00
Bob Wilson
04825f6c4b
Clean up whitespace.
...
llvm-svn: 88927
2009-11-16 17:56:13 +00:00
Jim Grosbach
0ba7bb08d7
tbb opt off by default
...
llvm-svn: 88921
2009-11-16 17:24:45 +00:00