- Aug 07, 2007
-
-
Dale Johannesen authored
Last x87 bits for full functionality (not thoroughly tested, and long doubles do not work in SSE modes at all - use -mcpu=i486 for now) llvm-svn: 40886
-
- Aug 05, 2007
-
-
Dale Johannesen authored
Lots of problems yet but some simple things work. llvm-svn: 40847
-
- Aug 02, 2007
-
-
Dan Gohman authored
Generalize isPSHUFDMask and add a unary SHUFPD pattern so that SHUFPD's memory operand alignment can be tested as well, with a fix to avoid breaking MMX's use of isPSHUFDMask. llvm-svn: 40756
-
Evan Cheng authored
llvm-svn: 40703
-
- Jul 31, 2007
-
-
Evan Cheng authored
llvm-svn: 40617
-
- Jul 27, 2007
-
-
Duncan Sands authored
llvm-svn: 40566
-
Dan Gohman authored
Make the alignedload and alignedstore patterns always require 16-byte alignment. This way when they are used in the "Fs" instructions, in which a vector instruction is used for a scalar purpose, they can still require the full vector alignment. And add a regression test for this. llvm-svn: 40555
-
Evan Cheng authored
llvm-svn: 40547
-
- Jul 26, 2007
-
-
Dan Gohman authored
x86 target, replacing them with the new alignment attributes on memory references. llvm-svn: 40504
-
- Jul 25, 2007
-
-
Dan Gohman authored
register instead of loading each element individually. llvm-svn: 40478
-
- Jul 23, 2007
-
-
Dan Gohman authored
llvm-svn: 40443
-
- Jul 20, 2007
-
-
Evan Cheng authored
llvm-svn: 40071
-
- Jul 14, 2007
-
-
Anton Korobeynikov authored
This patch fills the last necessary bits to enable exceptions handling in LLVM. Currently only on x86-32/linux. In fact, this patch adds necessary intrinsics (and their lowering) which represent really weird target-specific gcc builtins used inside unwinder. After corresponding llvm-gcc patch will land (easy) exceptions should be more or less workable. However, exceptions handling support should not be thought as 'finished': I expect many small and not so small glitches everywhere. llvm-svn: 39855
-
- Jul 10, 2007
-
-
Dan Gohman authored
in addition to the intrinsic forms. Add spill-folding entries for these new instructions, and for the scalar min and max instrinsic instructions which were missing. And add some preliminary ISelLowering code for using the new non-intrinsic vector sqrt instruction, and fneg and fabs. llvm-svn: 38478
-
- Jul 05, 2007
-
-
Anton Korobeynikov authored
llvm-svn: 37923
-
- Jul 04, 2007
-
-
Dale Johannesen authored
their names are changed. llvm-svn: 37876
-
- Jul 03, 2007
-
-
Dale Johannesen authored
model to include f32 variants. Some factoring improvments forthcoming. llvm-svn: 37847
-
- Jun 29, 2007
-
-
Evan Cheng authored
llvm-svn: 37786
-
Evan Cheng authored
llvm-svn: 37784
-
- Jun 25, 2007
-
-
Dan Gohman authored
extended vector types. Remove the special SDNode opcodes used for pre-legalize vector operations, and the special MVT::Vector type used with them. Adjust lowering and legalize to work with the normal SDNode kinds instead, and to use the normal MVT functions to work with vector types instead of using the two special operands that the pre-legalize nodes held. This allows pre-legalize and post-legalize DAGs, and the code that operates on them, to be more consistent. Pre-legalize vector operators can be handled more consistently with scalar operators. And, -view-dag-combine1-dags and -view-legalize-dags now look prettier for vector code. llvm-svn: 37719
-
- Jun 22, 2007
-
-
Dan Gohman authored
TargetLowering to SelectionDAG so that they have more convenient access to the current DAG, in preparation for the ValueType routines being changed from standalone functions to members of SelectionDAG for the pre-legalize vector type changes. llvm-svn: 37704
-
- Jun 19, 2007
-
-
Chris Lattner authored
Anton for half of this patch. llvm-svn: 37641
-
Evan Cheng authored
Look for VECTOR_SHUFFLE that's identity operation on either LHS or RHS. This can happen before DAGCombiner catches it. llvm-svn: 37636
-
- Jun 17, 2007
-
-
Bill Wendling authored
define double @test2(i64 %A) { %B = bitcast i64 %A to double ret double %B } $ llvm-as < t.ll | llc -march=x86-64 before: .align 4 .globl _test2 _test2: movd %rdi, %xmm0 ret after: _test2: subq $8, %rsp movq %rdi, (%rsp) movsd (%rsp), %xmm0 addq $8, %rsp ret llvm-svn: 37617
-
- Jun 16, 2007
-
-
Bill Wendling authored
llvm-svn: 37611
-
- Jun 15, 2007
-
-
Dan Gohman authored
llvm-svn: 37579
-
- Jun 09, 2007
-
-
Chris Lattner authored
llvm-svn: 37534
-
Chris Lattner authored
llvm-svn: 37533
-
- May 24, 2007
-
-
Dan Gohman authored
llvm-svn: 37320
-
- May 18, 2007
-
-
Dan Gohman authored
llvm-svn: 37234
-
- May 17, 2007
-
-
Evan Cheng authored
Fix a bogus check that prevented folding VECTOR_SHUFFLE to UNDEF; add an optimization to fold VECTOR_SHUFFLE to a zero vector. llvm-svn: 37173
-
Chris Lattner authored
cause other regressions. llvm-svn: 37160
-
Anton Korobeynikov authored
llvm-svn: 37159
-
Chris Lattner authored
llvm-svn: 37141
-
- May 15, 2007
-
-
Chris Lattner authored
llvm-svn: 37065
-
- May 03, 2007
-
-
Chris Lattner authored
1. x86 backend rejected (&gv+c) for the 'i' constraint when in static mode. 2. the matcher didn't correctly reject and accept some global addresses. the right predicate is GVRequiresExtraLoad, not "relomodel = pic". llvm-svn: 36670
-
- May 02, 2007
-
-
Anton Korobeynikov authored
Emit correct register move information in eh frames for X86. This allows Shootout-C++/except to pass on x86/linux with non-llvm-compiled (e.g. "native") unwind runtime. llvm-svn: 36647
-
- Apr 24, 2007
-
-
Bill Wendling authored
vector_shuffle v1, v2, <2, 6, 3, 7> I.e. vector_shuffle v, undef, <2, 2, 3, 3> MMX only has a shuffle for v4i16 vectors. It needs to use the unpackh for this type of operation. llvm-svn: 36403
-
- Apr 23, 2007
-
-
Lauro Ramos Venancio authored
llvm-svn: 36355
-
- Apr 21, 2007
-
-
Lauro Ramos Venancio authored
llvm-svn: 36318
-