Tom Stellard
9f95033d33
R600: Improve support for < 32-bit loads
...
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186921
2013-07-23 01:48:35 +00:00
Tom Stellard
ba30932908
R600: Rename AMDILISelDAGToDAG.cpp -> AMDGPUISelDAGToDAG.cpp
...
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186920
2013-07-23 01:48:29 +00:00
Tom Stellard
840214437b
R600: Move CONST_ADDRESS folding into AMDGPUDAGToDAGISel::Select()
...
This increases the number of opportunites we have for folding. With the
previous implementation we were unable to fold into any instructions
other than the first when multiple instructions were selected from a
single SDNode.
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186919
2013-07-23 01:48:24 +00:00
Tom Stellard
1e80309ebe
R600: Use KCache for kernel arguments
...
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186918
2013-07-23 01:48:18 +00:00
Tom Stellard
34ed721af4
R600: Simplify assembly for KCache registers using the TableGen !add operator
...
Before:
MOV * T0.W, KC0[131-128].Y
After:
MOV * T0.W, KC0[3].Y
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186917
2013-07-23 01:48:08 +00:00
Tom Stellard
acfeebf883
R600: Use the same compute kernel calling convention for all GPUs
...
A side-effect of this is that now the compiler expects kernel arguments
to be 4-byte aligned.
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186916
2013-07-23 01:48:05 +00:00
Tom Stellard
78e012969c
R600: Use correct LoadExtType when lowering kernel arguments
...
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186915
2013-07-23 01:47:58 +00:00
Tom Stellard
33dd04bfbe
R600: Clean up extended load patterns
...
Reviewed-by: Vincent Lejeune <vljn at ovi.com>
llvm-svn: 186914
2013-07-23 01:47:52 +00:00
Tom Stellard
beed74af48
R600: Expand vector FNEG
...
llvm-svn: 186913
2013-07-23 01:47:46 +00:00
Sean Callanan
d83d52481e
Fixed a potential crash in the GetOSVersion code
...
caused by a CFStringRef going out of scope.
llvm-svn: 186912
2013-07-23 01:38:41 +00:00
Rui Ueyama
6a41fca856
[PECOFF] Support -fixed command line option to disable base relocations.
...
llvm-svn: 186911
2013-07-23 01:29:50 +00:00
Craig Topper
bf547cea0e
Revert r186907 to fix bots.
...
llvm-svn: 186910
2013-07-23 01:29:37 +00:00
Richard Smith
79c06417d1
Add some missing cv-qualifiers.
...
llvm-svn: 186909
2013-07-23 01:24:30 +00:00
Matt Arsenault
efb38192b0
Error on more illegal kernel argument types for OpenCL
...
bool, half, pointers and structs / unions containing any
of these are not allowed. Does not yet reject size_t and
related integer types that are also disallowed.
llvm-svn: 186908
2013-07-23 01:23:36 +00:00
Craig Topper
80c310056c
Don't let x86 asm printer use the no operand movsd alias. It should use the normal movsl instead.
...
llvm-svn: 186907
2013-07-23 01:21:36 +00:00
Eli Bendersky
e6cbf1c04f
Make the nomathbuiltin.c test less demanding.
...
This should hopefully unbreak the Windows bots at http://bb.pgr.jp
llvm-svn: 186906
2013-07-23 01:09:17 +00:00
David Blaikie
613c69500d
Further simplify test case from r186894
...
llvm-svn: 186905
2013-07-23 01:01:17 +00:00
Craig Topper
c15a9e4fa4
Add aliases to map 'imm, mem' form of x86 bts/btr/btc without a size suffix to their 32-bit forms.
...
This makes them consistent with 'bt' which already had this handling. gas has the same behavior. There have been discussions on the mailing list about determining size based on the immediate, but my goal here was just to remove the inconsistency.
llvm-svn: 186904
2013-07-23 00:56:15 +00:00
Eli Friedman
088d39afc6
Integers which are too large should be an error.
...
Switch some warnings over to errors which should never have been warnings
in the first place. (Also, a minor fix to the preprocessor rules for
integer literals while I'm here.)
llvm-svn: 186903
2013-07-23 00:25:18 +00:00
Manman Ren
9974c88f76
Debug Info Finder: use processDeclare and processValue to list debug info
...
MDNodes used by DbgDeclareInst and DbgValueInst.
Another 16 testing cases failed and they are disabled with
-disable-debug-info-verifier.
A total of 34 cases are disabled with -disable-debug-info-verifier and will be
corrected.
llvm-svn: 186902
2013-07-23 00:22:51 +00:00
Adrian Prantl
adaeb8947a
Simplify testcase.
...
rdar://problem/14386148
llvm-svn: 186901
2013-07-23 00:21:48 +00:00
Craig Topper
001582833a
Explicitly don't let the asm printer use the clrb/w/l aliases for xor %reg, %reg.
...
It only didn't use it before because it seems InstAlias handling in the asm printer fails to count tied operands so it tried to find an xor with 2 operands instead of the 3 it wfails to count tied.
llvm-svn: 186900
2013-07-23 00:15:19 +00:00
Eli Bendersky
aefa5e2ff2
Add a -fno-math-builtin option to the Clang -cc1
...
llvm-svn: 186899
2013-07-23 00:13:01 +00:00
Adrian Prantl
ead2ba4649
Implement a better fix for r186894 by setting the appropriate type for __byref_variable_layout.
...
rdar://problem/14386148
llvm-svn: 186898
2013-07-23 00:12:14 +00:00
Craig Topper
c638f0cd4f
Suppress argumentless aliases for some x86 FP operations from being used by the asm writer. Prefer to use the explicit %st(1) form.
...
llvm-svn: 186897
2013-07-23 00:03:33 +00:00
Matt Arsenault
617a1351b4
Fix typo (ponted -> pointed)
...
llvm-svn: 186896
2013-07-22 23:52:23 +00:00
Fariborz Jahanian
9e543afe19
ObjectiveC migration. Better handle migration to conforming
...
protocols by ignoring cases where all protocol properties
and methods are optional.
llvm-svn: 186895
2013-07-22 23:50:04 +00:00
Adrian Prantl
52f5b2502f
Debug Info: Acknowledge the alignment when locating byref block variables.
...
Fixes rdar://problem/14386148
llvm-svn: 186894
2013-07-22 23:44:26 +00:00
Nick Lewycky
6ab9d936d5
Remove extraneous null statement. No functionality change!
...
llvm-svn: 186893
2013-07-22 23:38:27 +00:00
Jakub Staszak
d4d94065e3
Use switch instead of if. No functionality change.
...
llvm-svn: 186892
2013-07-22 23:38:16 +00:00
Eli Friedman
d1eec9cc96
Testcase for PR16673.
...
llvm-svn: 186891
2013-07-22 23:30:13 +00:00
Jakub Staszak
8e1a6e7d53
Remove trailing spaces.
...
llvm-svn: 186890
2013-07-22 23:16:36 +00:00
Eli Friedman
ef0b4a36f2
Don't emit open-paren fixit without close-paren.
...
getLocForEndOfToken() isn't guaranteed to succeed; if it doesn't, make sure
we do something sane.
Fixes PR16673. I'm not sure how to write a testcase for this short of grepping
through the diagnostic output.
llvm-svn: 186889
2013-07-22 23:09:39 +00:00
Rui Ueyama
d991c50273
[PECOFF] Replace magic numbers with offsetof().
...
llvm-svn: 186888
2013-07-22 23:02:08 +00:00
Eli Bendersky
f288626c13
Add a simple unit test for MemoryBuffer::getOpenFile
...
llvm-svn: 186887
2013-07-22 22:46:21 +00:00
Eric Christopher
1ff26ab694
Typo.
...
llvm-svn: 186886
2013-07-22 22:25:09 +00:00
Eric Christopher
1d62c25aa7
80-column tidying. Formatting choices by clang-format.
...
llvm-svn: 186885
2013-07-22 22:25:07 +00:00
Rui Ueyama
5443cba6d9
Fix -Wsign-compare warnings.
...
llvm-svn: 186884
2013-07-22 22:21:39 +00:00
Nadav Rotem
cf0dcdc71c
When we vectorize across multiple basic blocks we may vectorize PHINodes that create a cycle. We already break the cycle on phi-nodes, but arithmetic operations are still uplicated. This patch adds code that checks if the operation that we are vectorizing was vectorized during the visit of the operands and uses this value if it can.
...
llvm-svn: 186883
2013-07-22 22:18:07 +00:00
Rui Ueyama
6c655f237e
[PECOFF][Driver] Show error message if no input file is given.
...
llvm-svn: 186882
2013-07-22 22:17:24 +00:00
Jason Molenda
01aa53440b
When a Cortex-M3 target is selected (armv7m), force disassembly to be in
...
thumb mode.
<rdar://problem/14107444>, <rdar://problem/14107405>
llvm-svn: 186881
2013-07-22 22:11:53 +00:00
Jakub Staszak
cb132face0
OldPtr is llvm::Instruction. Remove unneeded cast<>.
...
llvm-svn: 186880
2013-07-22 22:10:43 +00:00
Richard Trieu
46978d41e6
Silence gcc warning.
...
llvm-svn: 186879
2013-07-22 21:29:28 +00:00
Kevin Enderby
285da02094
Fix the move to/from accumulator register instructions that use a full 64-bit
...
absolute address encoded in the instruction.
rdar://8612627 and rdar://14299221
llvm-svn: 186878
2013-07-22 21:25:31 +00:00
Jakub Staszak
6b36db08f3
Change tabs to spaces.
...
llvm-svn: 186877
2013-07-22 21:11:30 +00:00
Jakub Staszak
d07dd7f2ef
Fix typo in test.
...
llvm-svn: 186876
2013-07-22 21:10:42 +00:00
Anders Carlsson
8bb1dbbf75
Fix a bug in std::fill_n where memset would end up being called in cases when it shouldn’t.
...
Reviewed by Howard.
llvm-svn: 186875
2013-07-22 21:08:00 +00:00
Michael Gottesman
c0659fad7f
[stackprotector] Changed isNoopBitcast/sameNoopInput to take TargetLoweringBase instead of TargetLowering.
...
Both functions only use functionality from TargetLoweringBase.
rdar://13935163
llvm-svn: 186874
2013-07-22 21:05:47 +00:00
Michael Gottesman
29e449f222
Revert "cp11-migrate: Integration with LibFormat"
...
This reverts commit r186866.
This breaks the build and the original author Guillaume Papin
<guillaume.papin@epitech.eu> asked me to revert so he could look at it more with
revane.
llvm-svn: 186873
2013-07-22 21:03:56 +00:00
Enea Zaffanella
476f38a0c2
Revert commit 186833 (no longer needed after the fix in 186859).
...
llvm-svn: 186872
2013-07-22 20:58:30 +00:00