- Aug 10, 2007
-
-
Bill Wendling authored
llvm-svn: 40985
-
Bill Wendling authored
llvm-svn: 40982
-
Chris Lattner authored
llvm-svn: 40981
-
Chris Lattner authored
llvm-svn: 40980
-
Devang Patel authored
llvm-svn: 40979
-
Devang Patel authored
llvm-svn: 40978
-
Devang Patel authored
not split condition constraints. llvm-svn: 40977
-
Chris Lattner authored
llvm-svn: 40976
-
Evan Cheng authored
llvm-svn: 40975
-
Dale Johannesen authored
to handle values bigger than double. If we assume host==target and host long double works correctly, this is not too bad, but we don't want to have that limitation longterm. I could implement accepting double constants as long double or something like that, which would lead to incorrect codegen with no errors; the more I think about that the worse it seems. Rather than do such a hack that would be backed out later, I'm settling for giving reasonable error messages, for now. llvm-svn: 40974
-
Evan Cheng authored
llvm-svn: 40973
-
- Aug 09, 2007
-
-
Evan Cheng authored
divb / mulb outputs to ah. Under x86-64 it's not legal to read ah if the instruction requires a rex prefix (i.e. outputs to r8b, etc.). So issue shift right by 8 on AX and then truncate it to 8 bits instead. llvm-svn: 40972
-
Chris Lattner authored
alloca, increase the alignment of the load, turning it into an aligned load. This allows us to compile: #include <xmmintrin.h> __m128i foo(__m128i x){ static const unsigned int c_0[4] = { 0, 0, 0, 0 }; __m128i v_Zero = _mm_loadu_si128((__m128i*)c_0); x = _mm_unpacklo_epi8(x, v_Zero); return x; } into: _foo: punpcklbw _c_0.5944, %xmm0 ret .data .lcomm _c_0.5944,16,4 # c_0.5944 instead of: _foo: movdqu _c_0.5944, %xmm1 punpcklbw %xmm1, %xmm0 ret .data .lcomm _c_0.5944,16,2 # c_0.5944 llvm-svn: 40971
-
Evan Cheng authored
GR16_ sub-register class should be GR8_, not GR8. That is, it should only be 8-bit registers in 32-bit mode. Ditto for GR32_. llvm-svn: 40970
-
Dale Johannesen authored
llvm-svn: 40965
-
Owen Anderson authored
llvm-svn: 40961
-
Devang Patel authored
llvm-svn: 40960
-
Dale Johannesen authored
(constants are still not handled). Adds ConvertActions to control fp-to-fp conversions (these are currently defaulted for all other targets, so no changes there). llvm-svn: 40958
-
Dale Johannesen authored
llvm-svn: 40957
-
Scott Michel authored
to do so. llvm-svn: 40955
-
Owen Anderson authored
llvm-svn: 40953
-
Devang Patel authored
llvm-svn: 40952
-
Owen Anderson authored
llvm-svn: 40950
-
- Aug 08, 2007
-
-
Devang Patel authored
llvm-svn: 40947
-
Owen Anderson authored
llvm-svn: 40946
-
Devang Patel authored
llvm-svn: 40944
-
Devang Patel authored
llvm-svn: 40941
-
Reid Spencer authored
documentation implies and as its uses depend. llvm-svn: 40939
-
Reid Spencer authored
stdin through llvm-ld and llvm-link. llvm-svn: 40938
-
Owen Anderson authored
llvm-svn: 40936
-
Owen Anderson authored
and one hack to avoid hitting a bad case when the alias analysis is imprecise. llvm-svn: 40935
-
Owen Anderson authored
it for potentially undeading pointers. llvm-svn: 40933
-
Owen Anderson authored
No functionality change. llvm-svn: 40932
-
Chris Lattner authored
llvm-svn: 40927
-
Chris Lattner authored
llvm-svn: 40926
-
Evan Cheng authored
llvm-svn: 40925
-
Chris Lattner authored
ConstantFoldInstruction on calls) by avoiding Value::getName(). getName() constructs and returns an std::string, which does heap allocation stuff. This slightly speeds up instcombine. llvm-svn: 40924
-
Chris Lattner authored
1. domtree is a tree, not a graph. There is no need to avoid revisiting nodes with a set. 2. the worklist can contain the child iterator pointers so we don't get N^2 rescanning of children. This speeds up updateDFSNumbers significantly, making it basically free. On the testcase in PR1432, this speeds up loopsimplify by another 3x, dropping it from the 12th most expensive pass to the to the 30th. :) It used to be #1. llvm-svn: 40923
-
Owen Anderson authored
llvm-svn: 40922
-
Evan Cheng authored
llvm-svn: 40921
-