- May 18, 2010
-
-
Bill Wendling authored
- Change the logic DisableFramePointerElim() to check for the -disable-non-leaf-fp-elim before -disable-fp-elim. llvm-svn: 103990
-
- May 17, 2010
-
-
Evan Cheng authored
llvm-svn: 103982
-
Daniel Dunbar authored
- Of questionable utility, since in general anything which wants to do this should probably be within a target specific hook, which can rely on the sections being of the appropriate type. However, it can be useful for short term hacks. llvm-svn: 103980
-
Eric Christopher authored
llvm-svn: 103974
-
Bob Wilson authored
Obvious in retrospect but not fun to debug. llvm-svn: 103969
-
Evan Cheng authored
Using NEON load / store multiple instructions will no longer create gobs of vmov of D registers! llvm-svn: 103960
-
Evan Cheng authored
llvm-svn: 103917
-
- May 16, 2010
-
-
Dale Johannesen authored
<1xi64> -> i64 to work in MMX registers on hosts where -no-sse is the default (not mine). The right thing is to accept this and make i64->f64 conversions go through memory, but I don't have time right now. llvm-svn: 103914
-
Dale Johannesen authored
(This worked as of about 6 months ago and I didn't track down exactly what broke it; I think this fix is appropriate.) llvm-svn: 103911
-
Anton Korobeynikov authored
llvm-svn: 103903
-
Anton Korobeynikov authored
Patch by Charles Davis and Steven Watanabe! llvm-svn: 103902
-
Anton Korobeynikov authored
llvm-svn: 103901
-
Evan Cheng authored
llvm-svn: 103898
-
- May 15, 2010
-
-
Dale Johannesen authored
The implementation in LegalizeIntegerTypes to handle this as sint64->float + appropriate power of 2 is subject to double rounding, considered incorrect by numerics people. Use this implementation only when it is safe. This leads to using library calls in some cases that produced inline code before, but it's correct now. (EVTToAPFloatSemantics belongs somewhere else, any suggestions?) Add a correctly rounding (though not particularly fast) conversion that uses X87 80-bit computations for x86-32. 7885399, 5901940. This shows up in gcc.c-torture/execute/ieee/rbug.c in the gcc testsuite on some platforms. llvm-svn: 103883
-
Anton Korobeynikov authored
This can be extended later on to handle more "complex" constants. llvm-svn: 103881
-
Anton Korobeynikov authored
Temporary emit it as raw bytes until it will be added to binutils as well. llvm-svn: 103878
-
Evan Cheng authored
llvm-svn: 103868
-
Evan Cheng authored
llvm-svn: 103855
-
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
-
Evan Cheng authored
llvm-svn: 103851
-
Evan Cheng authored
instructions. e.g. %reg1026<def> = VLDMQ %reg1025<kill>, 260, pred:14, pred:%reg0 %reg1027<def> = EXTRACT_SUBREG %reg1026, 6 %reg1028<def> = EXTRACT_SUBREG %reg1026<kill>, 5 ... %reg1029<def> = REG_SEQUENCE %reg1028<kill>, 5, %reg1027<kill>, 6, %reg1028, 7, %reg1027, 8, %reg1028, 9, %reg1027, 10, %reg1030<kill>, 11, %reg1032<kill>, 12 After REG_SEQUENCE is eliminated, we are left with: %reg1026<def> = VLDMQ %reg1025<kill>, 260, pred:14, pred:%reg0 %reg1029:6<def> = EXTRACT_SUBREG %reg1026, 6 %reg1029:5<def> = EXTRACT_SUBREG %reg1026<kill>, 5 The regular coalescer will not be able to coalesce reg1026 and reg1029 because it doesn't know how to combine sub-register indices 5 and 6. Now 2-address pass will consult the target whether sub-registers 5 and 6 of reg1026 can be combined to into a larger sub-register (or combined to be reg1026 itself as is the case here). If it is possible, it will be able to replace references of reg1026 with reg1029 + the larger sub-register index. llvm-svn: 103835
-
Evan Cheng authored
llvm-svn: 103833
-
Bill Wendling authored
replace the check with the appropriate predicate. Modify the testcase to reflect the correct code. (It should be saving callee-saved registers on the stack allocated by the calling fuction.) llvm-svn: 103829
-
Dan Gohman authored
llvm-svn: 103826
-
- May 14, 2010
-
-
Bill Wendling authored
of "has calls". That's probably wrong, but it needs further investigation. Revert to the original behavior until this is settled. llvm-svn: 103824
-
Bill Wendling authored
stack. llvm-svn: 103813
-
Bill Wendling authored
llvm-svn: 103808
-
Bill Wendling authored
llvm-svn: 103804
-
Bill Wendling authored
the variable actually tracks. N.B., several back-ends are using "HasCalls" as being synonymous for something that adjusts the stack. This isn't 100% correct and should be looked into. llvm-svn: 103802
-
Dan Gohman authored
used more than once. If ISel had put a kill flag on one of them, it's not valid to transfer the kill flag to each new instance. llvm-svn: 103799
-
Kevin Enderby authored
argument, like "int $4", to not get an Assertion error. llvm-svn: 103791
-
Evan Cheng authored
llvm-svn: 103790
-
Dan Gohman authored
llvm-svn: 103778
-
Dan Gohman authored
control barriers, not memory ordering barriers. llvm-svn: 103777
-
Dan Gohman authored
llvm-svn: 103776
-
Evan Cheng authored
llvm-svn: 103760
-
Evan Cheng authored
llvm-svn: 103749
-
- May 13, 2010
-
-
Evan Cheng authored
llvm-svn: 103731
-
Bob Wilson authored
Do not use those for Thumb1 functions. llvm-svn: 103730
-
Oscar Fuentes authored
Patch by Dimitry Andric! llvm-svn: 103727
-