Nadav Rotem
4fae15e664
fix 80-col violation and fix the docs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174671 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 22:34:07 +00:00
Daniel Dunbar
83a4cb51ce
[lit] Add a display function for lit.Test.TestResult.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174667 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 21:34:34 +00:00
Akira Hatanaka
5dd41c95f3
[mips] Make Filler a class and reduce indentation.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174666 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 21:32:32 +00:00
Eric Christopher
e0501e866c
Formatting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174664 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 21:19:56 +00:00
Eric Christopher
7a0103c30d
"Clean up" line section symbol emission by emitting the section
...
syms before constructing the compile units so we're not emitting
section references to sections not there already.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174663 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 21:19:50 +00:00
Will Schmidt
df5b3305c7
[patch] bug 15055 Add Unistd.h to OProfileWrapper.cpp
...
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"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174661 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 20:43:33 +00:00
Bill Schmidt
8f7dc823bf
Constrain PowerPC autovectorization to fix bug 15041.
...
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174660 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 20:33:57 +00:00
Akira Hatanaka
0c66403efd
[mips] Add definition of JALR instruction which has two register operands. Change the
...
original JALR instruction with one register operand to be a pseudo-instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174657 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:48:00 +00:00
Tom Stellard
184f5c1545
R600/SI: cleanup VGPR encoding
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174656 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:45 +00:00
Tom Stellard
60fc58262f
R600/SI: Handle VGPR64 destination in copyPhysReg().
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174655 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:43 +00:00
Tom Stellard
e7384db6f6
R600/SI: Add pattern for mul.
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174654 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:42 +00:00
Tom Stellard
fc207d8f57
R600/SI: simplify and fix SMRD encoding
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174653 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:40 +00:00
Tom Stellard
75ddd4cd4c
R600/SI: add proper 64bit immediate support v2
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174652 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:38 +00:00
Tom Stellard
b0b1a7feee
R600: Add an explicit default processor
...
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174651 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:39:34 +00:00
Michael Ilseman
f89de816ae
Identify and simplify idempotent intrinsics. Test case included.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174650 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:26:05 +00:00
Arnold Schwaighofer
96a6555b57
Loop Vectorizer: Refactor Memory Cost Computation
...
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174646 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 19:05:21 +00:00
Meador Inge
35b1423ee6
ADT: Correct APInt::getActiveWords for zero values
...
PR15138 was opened because of a segfault in the Bitcode writer.
The actual issue ended up being a bug in APInt where calls to
APInt::getActiveWords returns a bogus value when the APInt value
is 0. This patch fixes the problem by ensuring that getActiveWords
returns 1 for 0 valued APInts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174641 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 18:36:50 +00:00
Michael J. Spencer
def0c1f756
[Object][ELF] Fix crash on no dynamic section.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174639 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 18:26:45 +00:00
Tom Stellard
64dca86fb4
R600/SI: Use proper instructions for array/shadow samplers.
...
Patch by: Michel Dänzer
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com >
Reviewed-by: Tom Stellard <thomas.stellard@amd.com >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174634 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 17:02:14 +00:00
Tom Stellard
914e47bb0c
R600/SI: Make sample intrinsic address parameter type overloaded.
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174633 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 17:02:13 +00:00
Tom Stellard
36ba909184
R600/SI: Add basic support for more integer vector types.
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174632 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 17:02:09 +00:00
Arnold Schwaighofer
66f535a273
ARM cost model: Add costs for vector selects
...
Vector selects are cheap on NEON. They get lowered to a vbsl instruction.
radar://13158753
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174631 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 16:10:15 +00:00
Michel Danzer
7db31f1007
R600/SI: Add pattern for flog2
...
22 more little piglits with radeonsi.
Reviewed-by: Tom Stellard <thomas.stellard@amd.com >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174615 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:55:16 +00:00
NAKAMURA Takumi
d9a8d43ed3
FDE::dumpHeader(): Forgot to fix one more formatting, ... take two!
...
Excuse me, I could not test it locally.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174614 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:54:42 +00:00
Tom Stellard
07b59ba697
R600: Consolidate sub register indices.
...
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 >
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174610 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:02:37 +00:00
Tom Stellard
1234c9be42
R600: Add support for SET*_DX10 instructions
...
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174609 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:02:35 +00:00
Tom Stellard
2a77cf7f47
R600: Add tests for unsupported condition codes.
...
All of the le and lt variants are unsupported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174608 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:02:33 +00:00
Tom Stellard
b4409610a2
R600: Fix assembly name for SETGT_INT
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174607 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 14:02:27 +00:00
NAKAMURA Takumi
8ff0631967
FDE::dumpHeader(): Forgot to fix one more formatting. It affected bigendian hosts.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174602 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 10:57:42 +00:00
Owen Anderson
55f067de09
Remove this testcase until I can figure out how to properly conditionalize it.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174591 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 07:01:54 +00:00
Owen Anderson
54b8fa3bb7
Another attempt at getting the XFAIL line right for this test.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174588 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 06:26:55 +00:00
Sean Silva
a79535c0dd
[ReleaseNotes] tidy up organization and formatting
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174587 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 05:56:46 +00:00
Nadav Rotem
2119cf0880
Update Release notes regarding TTI.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174586 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 05:44:58 +00:00
Nadav Rotem
87c6157ff6
Document the loop vectorizer changes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174585 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 05:42:31 +00:00
Reed Kotler
24b339dcdc
Make sure we call externals from libraries properly when -static.
...
For example, when we are doing mips16 hard float or soft float.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174583 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 04:34:51 +00:00
Sean Silva
a170f520a9
tblgen: Diagnose duplicate includes.
...
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174582 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 04:30:39 +00:00
Michael Gottesman
65c46b0cff
Moved some comments due to the recent refactoring of ObjCARC.
...
1. Moved a comment from ObjCARCOpts.cpp -> ObjCARCContract.cpp.
2. Removed a comment from ObjCARCOpts.cpp that was already moved to
ObjCARCAliasAnalysis.h/.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174581 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 04:12:57 +00:00
Reed Kotler
6e3443eed4
Enable jumps when in -static mode.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174580 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 03:49:51 +00:00
NAKAMURA Takumi
90e01ac0ea
DWARFDebugFrame.cpp: Fix formatting on i686 hosts.
...
FIXME: Are they really truncated to i32 from i64 unconditionally?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174574 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 02:02:27 +00:00
Michael J. Spencer
727de1e756
80-col
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174572 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 01:43:18 +00:00
Michael Ilseman
0fae64fde0
Preserve fast-math flags after reassociation and commutation. Update test cases
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174571 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 01:40:15 +00:00
Michael Ilseman
9f41a5c7fa
whitespace
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174569 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 01:27:13 +00:00
Michael J. Spencer
49db4691cf
[Object][ELF] Do the actual devirtualization.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174568 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 01:24:22 +00:00
Michael J. Spencer
945bc5bde0
[Object][ELF] Devirtualize and simplify dynamic table iteration.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174566 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 01:17:23 +00:00
Owen Anderson
1e8f6f4df1
Fix CMake detection of various cmath functions, and XFAIL the test on platforms that are known to be missing them.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174564 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 00:54:05 +00:00
Owen Anderson
ec643abe69
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.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174561 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-07 00:21:34 +00:00
Owen Anderson
42258e0ea8
Signficantly generalize our ability to constant fold floating point intrinsics, including ones on half types.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174555 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06 22:43:31 +00:00
Eli Bendersky
bfa18fdfbf
Fix typo
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174553 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06 22:34:46 +00:00
Michael J. Spencer
780e9004c8
[Support][ErrorOr] Add support for convertable types.
...
Thanks to Andrew, David, and Aaron for helping fix this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174552 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06 22:28:53 +00:00
Eli Bendersky
f91b23c8cd
Add a comment to the test that points to the source from which the input object
...
file was generated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174551 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-06 22:17:40 +00:00