- Feb 07, 2013
-
-
Eric Christopher authored
syms before constructing the compile units so we're not emitting section references to sections not there already. llvm-svn: 174663
-
Will Schmidt authored
Add #include <unistd.h> to OProfileWrapper.cpp. This provides the declarations for 'read' and 'close' that are otherwise missing, and result in 'error: <foo> was not declared in this scope'. This matches the issue as reported in bug 15055 "Can no longer compile LLVM with --with-oprofile" llvm-svn: 174661
-
Bill Schmidt authored
Certain vector operations don't vectorize well with the current PowerPC implementation. Element insert/extract performs poorly without VSX support because Altivec requires going through memory. SREM, UREM, and VSELECT all produce bad scalar code. There's a lot of work to do for the cost model before autovectorization will be tuned well, and this is not an attempt to address the larger problem. llvm-svn: 174660
-
Akira Hatanaka authored
original JALR instruction with one register operand to be a pseudo-instruction. llvm-svn: 174657
-
Tom Stellard authored
Remove all the unused code. Patch by: Christian König Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174656
-
Tom Stellard authored
Allows nexuiz to run with radeonsi. Patch by: Michel Dänzer Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174655
-
Tom Stellard authored
20 more little piglits with radeonsi. Patch by: Michel Dänzer Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174654
-
Tom Stellard authored
The _SGPR variants where wrong. Patch by: Christian König Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174653
-
Tom Stellard authored
v2: rebased on current upstream Patch by: Christian König Signed-off-by:
Christian König <christian.koenig@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174652
-
Tom Stellard authored
This is for the case when no processor is passed to the backend. This prevents the '' is not a recognized processor for this target (ignoring processor) warning from being generated by clang. llvm-svn: 174651
-
Michael Ilseman authored
llvm-svn: 174650
-
Arnold Schwaighofer authored
We don't want too many classes in a pass and the classes obscure the details. I was going a little overboard with object modeling here. Replace classes by generic code that handles both loads and stores. No functionality change intended. llvm-svn: 174646
-
Tom Stellard authored
Patch by: Michel Dänzer Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174634
-
Tom Stellard authored
Handle vectors of 1 to 16 integers. Change the intrinsic names to prevent the wrong one from being selected at runtime due to the overloading. Patch By: Michel Dänzer Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174633
-
Tom Stellard authored
v1i32, v2i32, v8i32 and v16i32. Only add VGPR register classes for integer vector types, to avoid attempts copying from VGPR to SGPR registers, which is not possible. Patch By: Michel Dänzer Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174632
-
Arnold Schwaighofer authored
Vector selects are cheap on NEON. They get lowered to a vbsl instruction. radar://13158753 llvm-svn: 174631
-
Michel Danzer authored
22 more little piglits with radeonsi. Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> llvm-svn: 174615
-
NAKAMURA Takumi authored
Excuse me, I could not test it locally. llvm-svn: 174614
-
Tom Stellard authored
Use sub0-15 everywhere. Patch by: Michel Dänzerr Reviewed-by:
Tom Stellard <thomas.stellard@amd.com> Signed-off-by:
Michel Dänzer <michel.daenzer@amd.com> llvm-svn: 174610
-
Tom Stellard authored
These instructions compare two floating point values and return an integer true (-1) or false (0) value. When compiling code generated by the Mesa GLSL frontend, the SET*_DX10 instructions save us four instructions for most branch decisions that use floating-point comparisons. llvm-svn: 174609
-
Tom Stellard authored
llvm-svn: 174607
-
NAKAMURA Takumi authored
llvm-svn: 174602
-
Reed Kotler authored
For example, when we are doing mips16 hard float or soft float. llvm-svn: 174583
-
Sean Silva authored
A double inclusion will pretty much always be an error in TableGen, so there's no point going on just to die with "def already defined" or whatnot. I'm not too thrilled about the "public: ... private: ..." to expose the DependenciesMapTy, but I really didn't see a better way to keep that type centralized. It's a smell that indicates that some refactoring is needed to make this code more loosely coupled. This should avoid all bugs of the same nature as PR15189. llvm-svn: 174582
-
Michael Gottesman authored
1. Moved a comment from ObjCARCOpts.cpp -> ObjCARCContract.cpp. 2. Removed a comment from ObjCARCOpts.cpp that was already moved to ObjCARCAliasAnalysis.h/.cpp. llvm-svn: 174581
-
Reed Kotler authored
llvm-svn: 174580
-
NAKAMURA Takumi authored
FIXME: Are they really truncated to i32 from i64 unconditionally? llvm-svn: 174574
-
Michael Ilseman authored
llvm-svn: 174571
-
Owen Anderson authored
Conditionalize constant folding of math intrinsics on the availability of an implementation on the host. This is a little bit unfortunate, but until someone decides to implement a full libm for APFloat, we don't have a better way to get this functionality. llvm-svn: 174561
-
- Feb 06, 2013
-
-
Owen Anderson authored
Signficantly generalize our ability to constant fold floating point intrinsics, including ones on half types. llvm-svn: 174555
-
Joe Abbey authored
llvm-svn: 174550
-
Eric Christopher authored
units coming in. llvm-svn: 174548
-
Eric Christopher authored
llvm-svn: 174547
-
Akira Hatanaka authored
llvm-svn: 174546
-
Eli Bendersky authored
account. Atoms use LEA for updating SP in prologs/epilogs, and the exact LEA opcode depends on the data model. Also reapplying the test case which was added and then reverted (because of Atom failures), this time specifying explicitly the CPU in addition to the triple. The test case now checks all variations (data mode, cpu Atom vs. Core). llvm-svn: 174542
-
Bill Schmidt authored
Most of PPCCallingConv.td is used only by the 32-bit SVR4 ABI. Rename things to clarify this. Also delete some code that's been commented out for a long time. llvm-svn: 174526
-
Tom Stellard authored
Only implemented for R600 so far. SI is missing implementations of a few callbacks used by the Indirect Addressing pass and needs code to handle frame indices. At the moment R600 only supports array sizes of 16 dwords or less. Register packing of vector types is currently disabled, which means that a vec4 is stored in T0_X, T1_X, T2_X, T3_X, rather than T0_XYZW. In order to correctly pack registers in all cases, we will need to implement an analysis pass for R600 that determines the correct vector width for each array. v2: - Add support for i8 zext load from stack. - Coding style fixes v3: - Don't reserve registers for indirect addressing when it isn't being used. - Fix bug caused by LLVM limiting the number of SubRegIndex declarations. v4: - Fix 64-bit defines llvm-svn: 174525
-
Tim Northover authored
Weakly defined symbols should evaluate to 0 if they're undefined at link-time. This is impossible to do with the usual address generation patterns, so we should use a literal pool entry to materlialise the address. llvm-svn: 174518
-
Eli Bendersky authored
llvm-svn: 174515
-
Tim Northover authored
These instructions are a late addition to the architecture, and may yet end up behind an optional attribute, but for now they're available at all times. llvm-svn: 174496
-