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
Dan Gohman
eecaa636fb
Fix an 80-column violation.
...
llvm-svn: 70925
2009-05-04 22:23:18 +00:00
Dan Gohman
6bfe85b985
Fix doxygen comment syntax.
...
llvm-svn: 70924
2009-05-04 22:20:30 +00:00
Chris Lattner
7e3c94b55e
Make DBG_STOPPOINT nodes, and therefore DBG_LABEL labels, get a DebugLoc, so that it
...
shows up in -print-machineinstrs. This doesn't appear to affect anything, but it was
weird for some DBG_LABELs to have DebugLocs but not all of them.
llvm-svn: 70921
2009-05-04 22:10:05 +00:00
Dan Gohman
6c425d29e7
Constify a bunch of SCEV-using code.
...
llvm-svn: 70919
2009-05-04 22:02:23 +00:00
Dan Gohman
2973567a95
X86FastISel doesn't support the -tailcallopt ABI.
...
llvm-svn: 70902
2009-05-04 19:50:33 +00:00
Argyrios Kyrtzidis
f82d02a6ca
Restore a comment.
...
llvm-svn: 70900
2009-05-04 19:23:45 +00:00
Anton Korobeynikov
262a397978
Fix code emission for conditional branches.
...
Patch by Collin Winter!
llvm-svn: 70898
2009-05-04 19:10:38 +00:00
Bill Wendling
417e759a87
Use %llvmgcc instead of llvm-gcc.
...
llvm-svn: 70886
2009-05-04 18:00:27 +00:00
Dan Gohman
f8f167320d
Use true instead of 1 for a boolean value. And fix a copy+pasto
...
in a comment.
llvm-svn: 70882
2009-05-04 17:25:21 +00:00
Dan Gohman
83dfa97326
Trim unnecessary #includes.
...
llvm-svn: 70880
2009-05-04 17:11:06 +00:00
Dan Gohman
5ae422d16f
Quotes are used for including llvm headers, rather than angles.
...
llvm-svn: 70879
2009-05-04 17:09:51 +00:00
Duncan Sands
4c7021febf
Teach capture tracking that readonly functions can
...
only capture their arguments by returning them or
throwing an exception or not based on the argument
value. Patch essentially by Frits van Bommel.
llvm-svn: 70876
2009-05-04 16:50:29 +00:00
Duncan Sands
b77e5b9e2e
Check that pure/const functions are marked nounwind.
...
llvm-svn: 70875
2009-05-04 16:47:11 +00:00
Chris Lattner
84cf4d62a8
fix some problems spotted by Duncan and Nicolas Geoffray
...
llvm-svn: 70872
2009-05-04 16:29:24 +00:00
Argyrios Kyrtzidis
fb958c2b09
-Remove the DwarfWriter::RecordSourceLine calls from the instruction selectors.
...
-Depend on DebugLocs for source line info.
(Comes with Regression-Be-Gone(tm))
llvm-svn: 70871
2009-05-04 16:23:49 +00:00