- Feb 13, 2008
-
-
Evan Cheng authored
llvm-svn: 47043
-
Dan Gohman authored
Add an overload that supports the uint64_t interface for use by clients that haven't been updated yet. llvm-svn: 47039
-
Dale Johannesen authored
Spotted by Nick Kledzik. llvm-svn: 47037
-
- Feb 12, 2008
-
-
Nate Begeman authored
Move formats into the formats file llvm-svn: 47035
-
Evan Cheng authored
llvm-svn: 47019
-
Evan Cheng authored
llvm-svn: 47002
-
Evan Cheng authored
llvm-svn: 47001
-
- Feb 11, 2008
-
-
Nate Begeman authored
Add some notes to the README. llvm-svn: 46949
-
- Feb 10, 2008
-
-
Nate Begeman authored
llvm-svn: 46931
-
Dan Gohman authored
llvm-svn: 46930
-
Nate Begeman authored
pabs{b,w,d} are not two address fix extract-to-mem sse4 ops add sse4 vector sign extend nodes llvm-svn: 46915
-
- Feb 09, 2008
-
-
Nate Begeman authored
llvm-svn: 46902
-
- Feb 08, 2008
-
-
Evan Cheng authored
It's not always safe to fold movsd into xorpd, etc. Check the alignment of the load address first to make sure it's 16 byte aligned. llvm-svn: 46893
-
Dale Johannesen authored
128-bit vectors need it only when SSE is on. llvm-svn: 46890
-
Dan Gohman authored
llvm-svn: 46877
-
Evan Cheng authored
llvm-svn: 46866
-
- Feb 07, 2008
-
-
Dan Gohman authored
to return pointers instead of references, since this is always what is needed. llvm-svn: 46857
-
Dan Gohman authored
llvm-svn: 46854
-
Evan Cheng authored
Before: _main: subq $8, %rsp leaq _X(%rip), %rax movsd 8(%rax), %xmm1 movss _X(%rip), %xmm0 call _t xorl %ecx, %ecx movl %ecx, %eax addq $8, %rsp ret Now: _main: subq $8, %rsp movsd _X+8(%rip), %xmm1 movss _X(%rip), %xmm0 call _t xorl %ecx, %ecx movl %ecx, %eax addq $8, %rsp ret Notice there is another idiotic codegen issue that needs to be fixed asap: xorl %ecx, %ecx movl %ecx, %eax llvm-svn: 46850
-
Evan Cheng authored
llvm-svn: 46849
-
- Feb 06, 2008
-
-
Dan Gohman authored
initializer problem, a minor tweak to the way the DAGISelEmitter finds load/store nodes, and a renaming of the new PseudoSourceValue objects. llvm-svn: 46827
-
- Feb 05, 2008
-
-
Dale Johannesen authored
llvm-svn: 46764
-
Evan Cheng authored
Dwarf requires variable entries to be in the source order. Right now, since we are recording variable information at isel time this means parameters would appear in the reverse order. The short term fix is to issue recordVariable() at asm printing time instead. llvm-svn: 46724
-
- Feb 04, 2008
-
-
Nate Begeman authored
Evan's help with the rest. llvm-svn: 46697
-
Nate Begeman authored
llvm-svn: 46696
-
- Feb 03, 2008
-
-
Nate Begeman authored
llvm-svn: 46681
-
- Feb 02, 2008
-
-
Evan Cheng authored
llvm-svn: 46667
-
Nick Lewycky authored
llvm-svn: 46666
-
Evan Cheng authored
SDIsel processes llvm.dbg.declare by recording the variable debug information descriptor and its corresponding stack frame index in MachineModuleInfo. This only works if the local variable is "homed" in the stack frame. It does not work for byval parameter, etc. Added ISD::DECLARE node type to represent llvm.dbg.declare intrinsic. Now the intrinsic calls are lowered into a SDNode and lives on through out the codegen passes. For now, since all the debugging information recording is done at isel time, when a ISD::DECLARE node is selected, it has the side effect of also recording the variable. This is a short term solution that should be fixed in time. llvm-svn: 46659
-
Evan Cheng authored
llvm-svn: 46655
-
- Feb 01, 2008
-
-
Evan Cheng authored
Remove the nasty LABEL hack with a much less evil one. Now llvm.dbg.func.start implies a stoppoint is set. SelectionDAGISel records a new source line but does not create a ISD::LABEL node for this special stoppoint. Asm printer will magically print this label. This ensures nothing is emitted before. llvm-svn: 46635
-
- Jan 31, 2008
-
-
Evan Cheng authored
llvm-svn: 46623
-
Evan Cheng authored
Add an extra operand to LABEL nodes which distinguishes between debug, EH, or misc labels. This fixes the EH breakage. However I am not convinced this is *the* solution. llvm-svn: 46609
-
Evan Cheng authored
llvm-svn: 46598
-
Dan Gohman authored
llvm-svn: 46590
-
Dan Gohman authored
with the real FLT_ROUNDS (defined in <float.h>). llvm-svn: 46587
-
Dan Gohman authored
in the backend. Introduce a new SDNode type, MemOperandSDNode, for holding a MemOperand in the SelectionDAG IR, and add a MemOperand list to MachineInstr, and code to manage them. Remove the offset field from SrcValueSDNode; uses of SrcValueSDNode that were using it are all all using MemOperandSDNode now. Also, begin updating some getLoad and getStore calls to use the PseudoSourceValue objects. Most of this was written by Florian Brander, some reorganization and updating to TOT by me. llvm-svn: 46585
-
- Jan 30, 2008
-
-
Evan Cheng authored
Treat the label for the first @llvm.dbg.stoppoint the same way as the dbg_func_start label. Make sure nothing else is inserted before them. Note this solution might be somewhat fragile since ISD::LABEL may be used for other purposes. If that ends up to be an issue, we may need to introduce a different node for debug labels. llvm-svn: 46571
-
Evan Cheng authored
Even though InsertAtEndOfBasicBlock is an ugly hack it still deserves a proper name. Rename it to EmitInstrWithCustomInserter since it does not necessarily insert instruction at the end. llvm-svn: 46562
-
Evan Cheng authored
llvm-svn: 46546
-