- Jan 24, 2014
-
-
Venkatraman Govindaraju authored
Add test cases to check parsing of v9 double registers and their aliased quad registers. llvm-svn: 199974
-
Rui Ueyama authored
llvm-svn: 199972
-
Rafael Espindola authored
llvm-svn: 199971
-
Rafael Espindola authored
llvm-svn: 199969
-
Rafael Espindola authored
llvm-svn: 199968
-
Rafael Espindola authored
llvm-svn: 199967
-
Chandler Carruth authored
We completely skipped promotion in LICM if the loop has a preheader or dedicated exits, but not *both*. We hoist if there is a preheader, and sink if there are dedicated exits, but either hoisting or sinking can move loop invariant code out of the loop! I have no idea if this has a practical consequence. If anyone has ideas for a test case, let me know. llvm-svn: 199966
-
Rafael Espindola authored
llvm-svn: 199965
-
Chandler Carruth authored
literal that bakes a pass name and forces parsing it in the pass manager. llvm-svn: 199963
-
Rafael Espindola authored
llvm-svn: 199955
-
- Jan 23, 2014
-
-
Eric Christopher authored
the existence of comdat/special sections. llvm-svn: 199954
-
Rafael Espindola authored
llvm-svn: 199951
-
Kevin Enderby authored
registers in memory addresses that do not match the index register. As it does for .att_syntax. rdar://15887380 llvm-svn: 199948
-
Alp Toker authored
The client and server now use a single unified low-level RPC core built around LLVM's existing cross-platform abstractions. llvm-svn: 199947
-
Kevin Enderby authored
scale factors in memory addresses. As it does for .att_syntax. It was producing: Assertion failed: (((Scale == 1 || Scale == 2 || Scale == 4 || Scale == 8)) && "Invalid scale!"), function CreateMem, file /Volumes/SandBox/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp, line 1133. rdar://14967214 llvm-svn: 199942
-
Eric Christopher authored
code this looks correct, but could use review. The previous was definitely not correct. llvm-svn: 199940
-
Lang Hames authored
llvm-svn: 199938
-
Aaron Ballman authored
llvm-svn: 199934
-
Lang Hames authored
loops. Writing back to the accumulator (231-type) allows the coalescer to eliminate an extra copy. llvm-svn: 199933
-
Rafael Espindola authored
llvm-svn: 199932
-
Alp Toker authored
llvm-svn: 199930
-
Alp Toker authored
Eliminates the LLI_BUILDING_CHILD build hack from r199885. Also add a FIXME to remove code that tricks the tests into passing when the feature fails to work. Please don't do stuff like this, the tests exist for a reason! llvm-svn: 199929
-
Weiming Zhao authored
Originally, BLX was passed as operand #0 in MachineInstr and as operand #2 in MCInst. But now, it's operand #2 in both cases. This patch also removes unnecessary FileCheck in the test case added by r199127. llvm-svn: 199928
-
Eric Christopher authored
llvm-svn: 199927
-
Juergen Ributzka authored
This patch adds the target analysis passes (usually TargetTransformInfo) to the codgen pipeline. We also expose now the AddAnalysisPasses method through the C API, because the optimizer passes would also benefit from better target-specific cost models. Reviewed by Andrew Kaylor llvm-svn: 199926
-
Ana Pazos authored
llvm-svn: 199925
-
Eric Christopher authored
void. Patch by Scott Talbot. llvm-svn: 199924
-
Rui Ueyama authored
Clang says that "flow" is unused when building LLD. This patch suppresses it. Differential Revision: http://llvm-reviews.chandlerc.com/D2573 llvm-svn: 199922
-
Tom Stellard authored
This fixes a crash in the OpenCV OpenCL test suite. There is no lit test for this, because the test would be very large and could easily be invalidated by changes to the scheduler or other parts of the compiler. Patch by: Vincent Lejeune llvm-svn: 199919
-
Tom Stellard authored
This pattern uses an SDNodeXForm, which isn't being emitted for some reason. I can get it to work by attaching the PatLeaf that has the XForm to the argument in the output pattern, but this results in an immediate being used in a register operand, which the backend can't handle yet. llvm-svn: 199918
-
Tom Stellard authored
The control flow finalizer would sometimes use an ALU_POP_AFTER instruction before the vetex fetch clause instead of using a POP instruction after it. llvm-svn: 199917
-
Tom Stellard authored
Implement the getUnrollingPreferences() function for AMDGPUTargetTransformInfo so that loops that do address calculations on pointers derived from alloca are unconditionally unrolled. Unrolling these loops makes it more likely that SROA will be able to eliminate the allocas, which is a big win for R600 since memory allocated by alloca (private memory) is really slow. llvm-svn: 199916
-
Andrew Trick authored
llvm-svn: 199911
-
Rafael Espindola authored
Argument promotion can replace an argument of a call with an alloca. This requires clearing the tail marker as it is very likely that the callee is now using an alloca in the caller. This fixes pr14710. llvm-svn: 199909
-
Tom Stellard authored
The unit test is now disabled on non-asserts builds. The CF stack can be corrupted if you use CF_ALU_PUSH_BEFORE, CF_ALU_ELSE_AFTER, CF_ALU_BREAK, or CF_ALU_CONTINUE when the number of sub-entries on the stack is greater than or equal to the stack entry size and sub-entries modulo 4 is either 0 or 3 (on cedar the bug is present when number of sub-entries module 8 is either 7 or 0) We choose to be conservative and always apply the work-around when the number of sub-enries is greater than or equal to the stack entry size, so that we can safely over-allocate the stack when we are unsure of the stack allocation rules. reviewed-by: Vincent Lejeune <vljn at ovi.com> llvm-svn: 199905
-
Simon Atanasyan authored
llvm-svn: 199898
-
Elena Demikhovsky authored
they give better sequences than VPERMI llvm-svn: 199893
-
Tim Northover authored
With constant-sharing, litpool loads consume 4 + N*2 bytes of code, but movw/movt pairs consume 8*N. This means litpools are better than movw/movt even with just one use. Other materialisation strategies can still be better though, so the logic is a little odd. llvm-svn: 199891
-
NAKAMURA Takumi authored
llvm-svn: 199889
-
Artyom Skrobov authored
llvm-svn: 199886
-