Bill Wendling
864cbcfc46
THis doesn't fail.
...
llvm-svn: 71142
2009-05-07 01:41:42 +00:00
Bill Wendling
6edd6ef74f
Just turn aggressive stack coloring off at -O3.
...
llvm-svn: 71140
2009-05-07 01:33:38 +00:00
Bill Wendling
7c50dcd02e
Temporarily revert r71010. It was causing massive failures during self-hosting.
...
llvm-svn: 71138
2009-05-07 01:27:25 +00:00
Argyrios Kyrtzidis
0f60e636c0
Make DwarfWriter::RecordInlinedFnStart more like the other DwarfWriter's methods:
...
-Have it return a label ID
-Remove the unused Instruction parameter
No functionality change.
llvm-svn: 71132
2009-05-07 00:16:31 +00:00
Dan Gohman
dee50585e0
Use stable_sort instead of plain sort to avoid the risk of generating
...
trivially different code on different hosts (due to differing
std::sort implementations).
llvm-svn: 71124
2009-05-06 22:54:33 +00:00
Bill Wendling
6e1b018958
- Move some debug fields to coincide with how GCC emits them. No functionality
...
change.
- Reformatting.
llvm-svn: 71118
2009-05-06 21:21:34 +00:00
Oscar Fuentes
48fa557312
CMake: Use pthread library when requested and available.
...
llvm-svn: 71116
2009-05-06 20:42:04 +00:00
Oscar Fuentes
a06115b0ab
CMake: Updated lib/Target/PIC16/CMakeLists.txt.
...
llvm-svn: 71115
2009-05-06 20:40:05 +00:00
Dale Johannesen
b2cf4944c2
Use X86AddrNumOperands instead of magic constant one
...
more place. This fixes a bunch of x86-64 JIT regressions.
(Introduced when the value of the magic constant changed
in 68645. At the time apparently nobody noticed; failures
were hidden in 70343-70439 by an unrelated bug, so showed
up again as "new" failures in 70440.)
llvm-svn: 71106
2009-05-06 19:04:30 +00:00
Evan Cheng
0ee6696fd8
Do not use register as base ptr of pre- and post- inc/dec load / store nodes.
...
llvm-svn: 71098
2009-05-06 18:25:01 +00:00
Evan Cheng
ecc4cc83a8
Unbreak the build.
...
llvm-svn: 71091
2009-05-06 18:00:56 +00:00
David Greene
be8ff09e46
Make sure to use signed arithmetic in APInt to fix a regression.
...
llvm-svn: 71090
2009-05-06 17:39:26 +00:00
Dan Gohman
33e1f0fcb5
Simplify code by using SmallVector's pop_back_val() instead of
...
separate back() and pop_back() calls.
llvm-svn: 71089
2009-05-06 17:22:41 +00:00
Dan Gohman
3817464c23
Add simplify_type specializations to allow WeakVH, AssertingVH, and
...
CallbackVH to participate in dyn_cast, isa, etc. without needing
an explicit conversion.
llvm-svn: 71087
2009-05-06 17:12:48 +00:00
Oscar Fuentes
24167db5ad
CMake: Updated lib/CodeGen/CMakeLists.txt.
...
llvm-svn: 71085
2009-05-06 14:56:40 +00:00
Oscar Fuentes
bf169af79a
CMake: Detects libpthread and sets HAVE_LIBPTHREAD.
...
llvm-svn: 71084
2009-05-06 14:40:37 +00:00
Oscar Fuentes
7a12578fb4
CMake: Added cmakedefine for HAVE_PTHREAD_H.
...
Patch by Robert Schuster!
llvm-svn: 71083
2009-05-06 14:27:59 +00:00
Duncan Sands
8478d08c36
Nounwind is not valid for function return values.
...
llvm-svn: 71082
2009-05-06 13:51:18 +00:00
Duncan Sands
28e07fdaa2
OCaml parameter attribute bindings from PR2752.
...
Incomplete, but better than nothing.
llvm-svn: 71081
2009-05-06 12:21:17 +00:00
Duncan Sands
938fde7e43
Add generic expansion of SUB when ADD and XOR
...
are legal. Based on a patch by Micah Villmow.
llvm-svn: 71078
2009-05-06 11:29:50 +00:00
Duncan Sands
b71ad70b4e
Fix PR3754: don't mark functions that wrap MallocInst with
...
the readnone. Since MallocInst is scheduled for deletion
it doesn't seem worth doing anything more subtle, such as
having mayWriteToMemory return true for MallocInst.
llvm-svn: 71077
2009-05-06 08:42:00 +00:00
Sanjiv Gupta
cc6f71e64c
Emit banksel and movlp instructions.
...
Split large global data (both initialized and un-initialized) into multiple sections of <= 80 bytes.
Provide routines to manage PIC16 ABI naming conventions.
llvm-svn: 71073
2009-05-06 08:02:01 +00:00
Duncan Sands
880eaf5278
Allow readonly functions to unwind exceptions. Teach
...
the optimizers about this. For example, a readonly
function with no uses cannot be removed unless it is
also marked nounwind.
llvm-svn: 71071
2009-05-06 06:49:50 +00:00
Mikhail Glushenkov
d5cadeed5d
A better error message.
...
llvm-svn: 71068
2009-05-06 04:54:23 +00:00
Lang Hames
fcc5ebb1d4
Renamed Spiller classes (plus uses and related files) to VirtRegRewriter.
...
llvm-svn: 71057
2009-05-06 02:36:21 +00:00
Mikhail Glushenkov
2a24374c7f
Regenerate documentation.
...
llvm-svn: 71055
2009-05-06 01:41:47 +00:00
Mikhail Glushenkov
d9ef672a0d
The 'forward_as' property did not use its second argument.
...
See PR4159 for details. Patch by Martin Nowack!
llvm-svn: 71054
2009-05-06 01:41:19 +00:00
Dan Gohman
39d3c78f6a
Fix a copy+pasto in a comment.
...
llvm-svn: 71035
2009-05-05 23:02:38 +00:00
Dan Gohman
c1169472a2
Delete a FIXME which is no longer relevant, and add a FIXME that is.
...
llvm-svn: 71033
2009-05-05 22:59:55 +00:00
Evan Cheng
0d781df8dc
Quotes should be printed before private prefix; some code clean up.
...
llvm-svn: 71032
2009-05-05 22:50:29 +00:00
Bill Wendling
265f9ffc43
Add dump method to DIDescriptor.
...
llvm-svn: 71028
2009-05-05 22:19:25 +00:00
Dan Gohman
6d1ffab07b
Add an explicit keyword.
...
llvm-svn: 71022
2009-05-05 21:23:20 +00:00
Dan Gohman
5e839321f2
If a MachineBasicBlock has multiple ways of reaching another block,
...
allow it to have multiple CFG edges to that block. This is needed
to allow MachineBasicBlock::isOnlyReachableByFallthrough to work
correctly. This fixes PR4126.
llvm-svn: 71018
2009-05-05 21:10:19 +00:00
Evan Cheng
5c1e41c21d
Forgot this in the last commit.
...
llvm-svn: 71014
2009-05-05 20:54:11 +00:00
Bill Wendling
5f4fcbeb10
Temporarily reverting r71008. It was causing this failure:
...
Running /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/test/
CodeGen/X86/dg.exp ...
FAIL: /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm.src/test/
CodeGen/X86/change-compare-stride-1.ll
Failed with exit(1) at line 2
while running: grep {cmpq $-478,} change-compare-stride-1.ll.tmp
child process exited abnormally
llvm-svn: 71013
2009-05-05 20:49:46 +00:00
Dan Gohman
ad61ec36ad
Add some more documentation for x86 special address spaces.
...
llvm-svn: 71012
2009-05-05 20:48:47 +00:00
Evan Cheng
984da04cd0
Enable stack coloring with regs at -O3.
...
llvm-svn: 71010
2009-05-05 20:30:36 +00:00
David Greene
2bb2b3840e
Handle overflow of 64-bit loop conditions.
...
llvm-svn: 71008
2009-05-05 20:22:36 +00:00
Chris Lattner
5cc9a36d1c
Add basic support for code generation of
...
addrspace(257) -> FS relative on x86. Patch by Zoltan Varga!
llvm-svn: 70992
2009-05-05 18:52:19 +00:00
Evan Cheng
2deb91f54b
bugpoint for jit should just ignore GCC arguments.
...
llvm-svn: 70988
2009-05-05 18:35:36 +00:00
Evan Cheng
138eed76c7
Revert part of 70929 that has to do with determining whether a SIB byte is needed. It causes a lot of x86_64 JIT failures.
...
llvm-svn: 70986
2009-05-05 18:18:57 +00:00
David Greene
9aad2bbcf9
Allow multiclass def names to contain "#NAME"" where TableGen replaces
...
#NAME# with the name of the defm instantiating the multiclass. This is
useful for AVX instruction naming where a "V" prefix is standard
throughout the ISA. For example:
multiclass SSE_AVX_Inst<...> {
def SS : Instr<...>;
def SD : Instr<...>;
def PS : Instr<...>;
def PD : Instr<...>;
def V#NAME#SS : Instr<...>;
def V#NAME#SD : Instr<...>;
def V#NAME#PS : Instr<...>;
def V#NAME#PD : Instr<...>;
}
defm ADD : SSE_AVX_Inst<...>;
Results in
ADDSS
ADDSD
ADDPS
ADDPD
VADDSS
VADDSD
VADDPS
VADDPD
llvm-svn: 70979
2009-05-05 16:28:25 +00:00
Mikhail Glushenkov
2b4696b585
Fix incorrect code generation with ENV.
...
See PR4157 for details. Patch by Martin Nowack!
llvm-svn: 70973
2009-05-05 12:34:34 +00:00
Chris Lattner
a96ef42a06
Do not require variable debug info nodes to have a compile unit.
...
For implicit decls like "self" and "_cmd" in ObjC, these decls
should not have a location.
llvm-svn: 70964
2009-05-05 04:55:56 +00:00
Evan Cheng
77e14276e0
Do not substitute if the new register isn't in the register class of the operand being updated.
...
llvm-svn: 70953
2009-05-05 00:46:16 +00:00
Evan Cheng
95ce4ffb36
Move getInstrOperandRegClass from the scheduler to TargetInstrInfo.
...
llvm-svn: 70950
2009-05-05 00:30:09 +00:00
Evan Cheng
ecfc8e8464
Do forward and backward substitution to eliminate loads and stores when possible.
...
llvm-svn: 70937
2009-05-04 23:13:13 +00:00
Evan Cheng
0eb8616e89
Default llc / lli optimization to "Default", which corresponds to -O1 / -O2.
...
llvm-svn: 70934
2009-05-04 23:05:19 +00:00
Evan Cheng
6843d3293b
- Avoid the longer SIB encoding on x86_64 when it's not needed.
...
- Synchronize instruction length computation code in X86InstrInfo with code in X86CodeEmitter.cpp
Patch by Zoltan Varga.
llvm-svn: 70929
2009-05-04 22:49:16 +00:00
Dan Gohman
00c4ac3add
Re-apply 70645, converting ScalarEvolution to use
...
CallbackVH, with fixes. allUsesReplacedWith need to
walk the def-use chains and invalidate all users of a
value that is replaced. SCEVs of users need to be
recalcualted even if the new value is equivalent. Also,
make forgetLoopPHIs walk def-use chains, since any
SCEV that depends on a PHI should be recalculated when
more information about that PHI becomes available.
llvm-svn: 70927
2009-05-04 22:30:44 +00:00