- Jul 29, 2010
-
-
Jim Grosbach authored
llvm-svn: 109691
-
- Jul 24, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 109359
-
Evan Cheng authored
it's too late to start backing off aggressive latency scheduling when most of the registers are in use so the threshold should be a bit tighter. - Correctly handle live out's and extract_subreg etc. - Enable register pressure aware scheduling by default for hybrid scheduler. For ARM, this is almost always a win on # of instructions. It's runtime neutral for most of the tests. But for some kernels with high register pressure it can be a huge win. e.g. 464.h264ref reduced number of spills by 54 and sped up by 20%. llvm-svn: 109279
-
- Jul 22, 2010
-
-
Eric Christopher authored
llvm-svn: 109047
-
- Jul 21, 2010
-
-
Evan Cheng authored
llvm-svn: 108991
-
- Jul 20, 2010
-
-
Evan Cheng authored
ARM has to provide its own TargetLowering::findRepresentativeClass because its scalar floating point registers alias its vector registers. llvm-svn: 108761
-
- Jul 19, 2010
-
-
Jim Grosbach authored
it should set the jump table encloding the EK_Inline. This prevents a second, unused, copy of the table from being emitted after the function body. PR6581. llvm-svn: 108730
-
Jim Grosbach authored
llvm-svn: 108727
-
Jim Grosbach authored
it should set the jump table encloding the EK_Inline. This prevents a second, unused, copy of the table from being emitted after the function body. PR7499. llvm-svn: 108722
-
- Jul 17, 2010
-
-
Jim Grosbach authored
and a combine pattern to use it for setting a bit-field to a constant value. More to come for non-constant stores. llvm-svn: 108570
-
- Jul 14, 2010
-
-
Bob Wilson authored
llvm-svn: 108324
-
- Jul 13, 2010
-
-
Bob Wilson authored
NEON VMOV-immediate instructions. This simplifies some things. llvm-svn: 108275
-
Evan Cheng authored
Extend the r107852 optimization which turns some fp compare to code sequence using only i32 operations. It now optimize some f64 compares when fp compare is exceptionally slow (e.g. cortex-a8). It also catches comparison against 0.0. llvm-svn: 108258
-
- Jul 08, 2010
-
-
Evan Cheng authored
Optimize some vfp comparisons to integer ones. This patch implements the simplest case when the following conditions are met: 1. The arguments are f32. 2. The arguments are loads and they have no uses other than the comparison. 3. The comparison code is EQ or NE. e.g. vldr.32 s0, [r1] vldr.32 s1, [r0] vcmpe.f32 s1, s0 vmrs apsr_nzcv, fpscr beq LBB0_2 => ldr r1, [r1] ldr r0, [r0] cmp r0, r1 beq LBB0_2 More complicated cases will be implemented in subsequent patches. llvm-svn: 107852
-
- Jul 07, 2010
-
-
Dan Gohman authored
code can do calling-convention queries. This obviates OutputArgReg. llvm-svn: 107786
-
- Jun 25, 2010
-
-
Dale Johannesen authored
for an "i" constraint should get lowered; PR 6309. While this argument was passed around a lot, this is the only place it was used, so it goes away from a lot of other places. llvm-svn: 106893
-
- Jun 15, 2010
-
-
Bob Wilson authored
llvm-svn: 106030
-
Bob Wilson authored
immediate" operands. These functions have so far only been used for VMOV but they also apply to other NEON instructions with modified immediate operands. No functional changes. llvm-svn: 105969
-
- Jun 04, 2010
-
-
Bob Wilson authored
VECTOR_SHUFFLEs to REG_SEQUENCE instructions. The standard ISD::BUILD_VECTOR node corresponds closely to REG_SEQUENCE but I couldn't use it here because its operands do not get legalized. That is pretty awful, but I guess it makes sense for other targets. Instead, I have added an ARM-specific version of BUILD_VECTOR that will have its operands properly legalized. This fixes the rest of Radar 7872877. llvm-svn: 105439
-
- Jun 03, 2010
-
-
Dale Johannesen authored
A temporary flag -arm-tail-calls defaults to off, so there is no functional change by default. Intrepid users may try this; simple cases work but there are bugs. llvm-svn: 105413
-
- Jun 02, 2010
-
-
Jim Grosbach authored
llvm-svn: 105350
-
- May 28, 2010
-
-
Jim Grosbach authored
llvm-svn: 104897
-
- May 27, 2010
-
-
Jim Grosbach authored
to update the jmpbuf in the presence of VLAs. llvm-svn: 104862
-
- May 26, 2010
-
-
Jim Grosbach authored
ISD::. No functional change. llvm-svn: 104734
-
- May 22, 2010
-
-
-
Jim Grosbach authored
Followups: docs patch for the builtin and eh.sjlj.setjmp cleanup to match longjmp. llvm-svn: 104419
-
- May 21, 2010
-
-
Evan Cheng authored
Allow targets more controls on what nodes are scheduled by reg pressure, what for latency in hybrid mode. llvm-svn: 104293
-
- May 15, 2010
-
-
Evan Cheng authored
allow target to override it in order to map register classes to illegal but synthesizable types. e.g. v4i64, v8i64 for ARM / NEON. llvm-svn: 103854
-
- May 11, 2010
-
-
Dan Gohman authored
Move EmitTargetCodeForMemcpy, EmitTargetCodeForMemset, and EmitTargetCodeForMemmove out of TargetLowering and into SelectionDAGInfo to exercise this. llvm-svn: 103481
-
Dan Gohman authored
was unused. TargetMachine::getSubtarget() is used instead. llvm-svn: 103474
-
- May 01, 2010
-
-
Dan Gohman authored
changes before doing phi lowering for switches. llvm-svn: 102809
-
- Apr 17, 2010
-
-
Dan Gohman authored
const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635
-
Dan Gohman authored
MachineFunctionInfo subclasses. llvm-svn: 101634
-
- Apr 04, 2010
-
-
Mon P Wang authored
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset, e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1) llvm-svn: 100304
-
- Apr 02, 2010
-
-
Mon P Wang authored
llvm-svn: 100199
-
Mon P Wang authored
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset, e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1) llvm-svn: 100191
-
- Mar 31, 2010
-
-
Bob Wilson authored
llvm-svn: 99948
-
- Mar 30, 2010
-
-
Mon P Wang authored
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1) A update of langref will occur in a subsequent checkin. llvm-svn: 99928
-
- Mar 19, 2010
-
-
Bob Wilson authored
--- Reverse-merging r98889 into '.': U lib/Target/ARM/ARMInstrNEON.td U lib/Target/ARM/ARMISelLowering.h U lib/Target/ARM/ARMInstrInfo.td U lib/Target/ARM/ARMInstrVFP.td U lib/Target/ARM/ARMISelLowering.cpp U lib/Target/ARM/ARMInstrFormats.td llvm-svn: 99010
-
- Mar 18, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 98889
-