Douglas Gregor
ad69e65a39
Add 'mutable' to the function declarator chunk, to be used when
...
parsing lambda expressions, from John Freeman!
llvm-svn: 135090
2011-07-13 21:47:47 +00:00
Bruno Cardoso Lopes
9613b64916
Make X86ISD::ANDNP more general and Codegen 256-bit VANDNP. A more
...
general version of X86ISD::ANDNP also opened the room for a little bit
of refactoring.
llvm-svn: 135088
2011-07-13 21:36:51 +00:00
Bruno Cardoso Lopes
7ba479d22f
The target specific node PANDN name is misleading. That happens because
...
it's later selected to a ANDNPD/ANDNPS instruction instead of the PANDN
instruction. Rename it.
llvm-svn: 135087
2011-07-13 21:36:47 +00:00
Douglas Gregor
385cfc073e
Fix an incorrect namespace typo-correction diagnostic, from Kaelyn
...
Uhrain! Fixes PR10318.
llvm-svn: 135086
2011-07-13 21:36:26 +00:00
Jim Grosbach
ca7150b54d
Cleanup Thumb co-processor instructions a bit.
...
Combine redundant base classes and such. No indended functional change.
llvm-svn: 135085
2011-07-13 21:35:10 +00:00
Eli Friedman
344ec79715
Make sure we don't combine a large displacement and a frame index in the same addressing mode on x86-64. It can overflow, leading to a crash/miscompile.
...
<rdar://problem/9763308>
llvm-svn: 135084
2011-07-13 21:29:53 +00:00
Devang Patel
f0335ce632
Emit debug info for extended vectors.
...
llvm-svn: 135083
2011-07-13 21:23:30 +00:00
Jim Grosbach
cabb48d511
Parameterize away the ARM T1Cop class.
...
llvm-svn: 135082
2011-07-13 21:17:59 +00:00
Jim Grosbach
adb29b6dbb
Fix predicates for Thumb co-processor instructions.
...
They're all Thumb2 only, not just some of them. More refactoring cleanup
coming.
llvm-svn: 135081
2011-07-13 21:14:23 +00:00
Jakob Stoklund Olesen
5fba5b8eb9
Only keep the global split candidates that work out.
...
Some pysical registers create split solutions that would spill anywhere.
They should not even be considered in future multi-way global splits.
This does not affect code generation (yet).
llvm-svn: 135080
2011-07-13 20:49:46 +00:00
Eli Friedman
ef67e7d623
Refactor out checking for displacements on x86-64 addressing modes. No functionality change. Refactoring in preparation for an additional safety check in FoldOffsetIntoAddress.
...
Part of <rdar://problem/9763308>.
llvm-svn: 135079
2011-07-13 20:44:23 +00:00
Jim Grosbach
ec8989115d
Testcases for ARM assembly BX/BXJ instructions.
...
llvm-svn: 135078
2011-07-13 20:25:46 +00:00
Jim Grosbach
e2f9840cdb
Fix encoding for ARM BXJ instruction.
...
llvm-svn: 135077
2011-07-13 20:25:01 +00:00
Jim Grosbach
801d3ad1b2
Fix encoding of predicate bits on ARM BX_pred.
...
llvm-svn: 135076
2011-07-13 20:21:31 +00:00
Ted Kremenek
60654d697a
format string checking: long and int have the same widths on 32-bit, so we shouldn't warn about using
...
an "int" format specifier with a "long" type in 32-bit.
llvm-svn: 135075
2011-07-13 20:20:58 +00:00
Jakob Stoklund Olesen
7bb72e2824
Move the InterferenceCache cursor into the GlobalSplitCand struct.
...
This is in preparation of supporting multiple global split candidates in
a single live range split operation.
llvm-svn: 135074
2011-07-13 20:14:52 +00:00
John McCall
928a25714e
Enforce access control for the destructor in a new[] expression and mark
...
it as used. Otherwise, we can fail to instantiate or validate the destructor,
which can lead to crashes in IR gen like PR10351.
llvm-svn: 135073
2011-07-13 20:12:57 +00:00
Jim Grosbach
2371a3f14a
Testcases for ARM assembly BLX/BL instructions.
...
llvm-svn: 135072
2011-07-13 20:11:04 +00:00
Jim Grosbach
975b641ee8
Range checking for 16-bit immediates in ARM assembly.
...
llvm-svn: 135071
2011-07-13 20:10:10 +00:00
Jay Foad
5e4416e8c9
Revert r135042. As Chris pointed out, it had no effect, and was based on
...
a complete misunderstanding of the code.
llvm-svn: 135070
2011-07-13 20:05:31 +00:00
Johnny Chen
10d6ce494b
Add @expectedFailure decorator for test_target_variable_command_with_dsym().
...
rdar://problem/9763907
llvm-svn: 135069
2011-07-13 20:03:51 +00:00
Evan Cheng
2d7faa5e3e
Fix up TargetLoweringObjectFile ctors to properly initialize fields.
...
llvm-svn: 135068
2011-07-13 19:54:59 +00:00
Argyrios Kyrtzidis
de223c3a7b
[arcmt] Add weak/unsafe_unretained for "@property (readonly)" when we are @synthesizing it.
...
llvm-svn: 135067
2011-07-13 19:47:57 +00:00
Jim Grosbach
e255be93a8
Give the ARM BKPT instruction the right operand type.
...
The immediate is of limited range and the operand type should reflect that.
llvm-svn: 135066
2011-07-13 19:24:09 +00:00
Argyrios Kyrtzidis
c8b3619773
[arcmt] For properties rewrite 'assign' -> 'weak or unsafe_unretained', 'retain' -> 'strong', and add
...
'weak or unsafe_unretained' when 'assign' is missing. rdar://9496219&9602589.
llvm-svn: 135065
2011-07-13 19:22:00 +00:00
Evan Cheng
4a40a747ba
Change test case, one that actually failed before my commit.
...
llvm-svn: 135064
2011-07-13 19:19:44 +00:00
Jim Grosbach
c845e55374
Add tests for ARM parsing of 'BKPT' instruction.
...
llvm-svn: 135063
2011-07-13 19:17:36 +00:00
Jim Grosbach
43b45e2790
Fix copy-pasto.
...
llvm-svn: 135062
2011-07-13 19:16:30 +00:00
Jim Grosbach
4f0f2ac757
Add tests for ARM parsing of 'BIC' instruction.
...
llvm-svn: 135061
2011-07-13 19:12:32 +00:00
Jim Grosbach
6cfb1573bf
Add some FIXMEs.
...
Keeping the instructions in alphabetical order, just like in the ARM ARM.
Adding FIXMEs for skipped instructions when adding tests out of order.
llvm-svn: 135060
2011-07-13 19:10:23 +00:00
Evan Cheng
d78e0c22fb
Revert accidental commit.
...
llvm-svn: 135059
2011-07-13 19:09:08 +00:00
Evan Cheng
b94674b325
It's not safe to fold (fptrunc (sqrt (fpext x))) to (sqrtf x) if there is another use of sqrt. rdar://9763193
...
llvm-svn: 135058
2011-07-13 19:08:16 +00:00
Fariborz Jahanian
9a881019a5
With -Wselector, don't warn about unimplemented optional method
...
used in @selector expression because, well, their implementation
is optional. // rdar://9545564
llvm-svn: 135057
2011-07-13 19:05:43 +00:00
Jim Grosbach
b7cdd8772c
Add tests for ARM parsing of 'AND' instruction.
...
llvm-svn: 135056
2011-07-13 18:55:14 +00:00
Jim Grosbach
bb24c595f7
Improve ARM assembly parsing diagnostics a bit.
...
Catch potential cascading errors on a malformed so_reg operand and bail after
the first error.
Add some tests for the diagnostics we do want.
llvm-svn: 135055
2011-07-13 18:49:30 +00:00
John McCall
dffafded6c
Don't crash if defining -dealloc in a category.
...
llvm-svn: 135054
2011-07-13 18:26:47 +00:00
Jim Grosbach
61a9f2af9e
Add tests for ARM parsing of 'ADD' instruction
...
llvm-svn: 135053
2011-07-13 18:12:46 +00:00
Jim Grosbach
04afb071e1
Destination register operand is optional for ADC and SBC ARM.
...
llvm-svn: 135052
2011-07-13 17:57:17 +00:00
John McCall
3f4138c5d0
In debugger mode, make ObjC message sends to unknown selectors return
...
__unknown_anytype, and rewrite such message sends correctly.
I had to bite the bullet and actually add a debugger support mode for this
one, which is a bit unfortunate, but there really isn't anything else
I could imagine doing; this is clearly just debugger-specific behavior.
llvm-svn: 135051
2011-07-13 17:56:40 +00:00
Fariborz Jahanian
17585e7940
objc++: Some level of covariance is allowed in ObjC properties.
...
Make it also available in ObjC++ propeties. Use common code for
objc and objc++ so they don't diverge. // rdar://9740328
llvm-svn: 135050
2011-07-13 17:55:01 +00:00
Jim Grosbach
7dcd1354f1
Flesh out ARM Parser support for shifted-register operands.
...
Now works for parsing register shifted register and register shifted
immediate arithmetic instructions, including the 'rrx' rotate with extend.
llvm-svn: 135049
2011-07-13 17:50:29 +00:00
Ted Kremenek
cc47e0fad1
Re-relax conversion specifier checking for printf format strings and conversion specifiers. My recent change was a mistake.
...
llvm-svn: 135048
2011-07-13 17:35:14 +00:00
Jim Grosbach
06210a28de
80 columns.
...
llvm-svn: 135047
2011-07-13 17:25:55 +00:00
Ted Kremenek
1d3fb8af68
Fix inversion in argument type checking for format strings with conversion specifiers for character types.
...
llvm-svn: 135046
2011-07-13 17:25:47 +00:00
Howard Hinnant
88410049fa
http://llvm.org/bugs/show_bug.cgi?id=10346
...
llvm-svn: 135045
2011-07-13 16:00:50 +00:00
Howard Hinnant
f6b7e20bc8
Reverted to 134947. Once I got into it, I discovered there were too many problems to fix in 135035.
...
llvm-svn: 135044
2011-07-13 15:48:16 +00:00
Jim Grosbach
602aa90ab8
Update MCParsedAsmOperand debug methods.
...
Update the debug output interface for MCParsedAsmOperand to have a print()
method which takes an output stream argument, an << operator which invokes
the print method using the given stream, and a dump() method which prints
the operand to the dbgs() stream. This makes the interface more consistent
with the rest of LLVM, and more convenient to use at the debugger command
line.
llvm-svn: 135043
2011-07-13 15:34:57 +00:00
Jay Foad
e732a7d62a
Really cache function types and anonymous struct types.
...
llvm-svn: 135042
2011-07-13 10:39:49 +00:00
Jay Foad
57aa636794
Convert InsertValueInst and ExtractValueInst APIs to use ArrayRef.
...
llvm-svn: 135040
2011-07-13 10:26:04 +00:00
Jay Foad
00e887b96f
Add some bits that I found useful when converting InsertValueInst and
...
ExtractValueInst APIs to use ArrayRef: a new constructor taking a
(begin, end) range, and operators == and != for element-wise comparison.
llvm-svn: 135039
2011-07-13 09:15:05 +00:00