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
John McCall
97eab0a271
Okay, that rule about zero-length arrays applies to destroying
...
them, too.
llvm-svn: 135038
2011-07-13 08:09:46 +00:00
Danil Malyshev
72510f22b4
Add to RuntimeDyld support different object formats
...
llvm-svn: 135037
2011-07-13 07:57:58 +00:00
John McCall
6549b31fe9
Arrays are permitted to be zero-length in some situations.
...
llvm-svn: 135036
2011-07-13 07:37:11 +00:00
Alexis Hunt
8a02a632be
Implement the __nolocale functions properly so that they will work on
...
all platforms. Unfortunately a lot of this remains conditionally
compiled so as not to break Apple's ABI.
The new _LIBCPP_LOCALE__L_EXTENSIONS macro can be defined on other
platforms that support _l suffixes for all functions in order to use
them.
llvm-svn: 135035
2011-07-13 06:40:50 +00:00
John McCall
c368838b20
Make the integer-range analysis recognize ^= correctly,
...
and (while I'm at it) teach it to grok the results of simple
assignments.
The first is PR10336.
llvm-svn: 135034
2011-07-13 06:35:24 +00:00
John McCall
f677a8e99e
Convert the standard default-construction loops to use phis and
...
partial destruction.
llvm-svn: 135033
2011-07-13 06:10:41 +00:00
Chris Lattner
46ca3272e4
per john's advice, speculatively lower uses of forward-declared enums to
...
i32. They almost always end up this way in the end anyway, and if we get
lucky, this avoids generating some bitcasts.
llvm-svn: 135032
2011-07-13 05:31:19 +00:00
Chris Lattner
68ef694382
stop leaking all named struct types with an empty name. Thanks
...
to Benjamin Kramer for steering me in the right direction here.
llvm-svn: 135031
2011-07-13 04:22:39 +00:00
Chris Lattner
3517f14219
PR10337 reminds me that calls return values, lets handle them just
...
like arguments. Thanks PR10337! :)
llvm-svn: 135030
2011-07-13 03:59:32 +00:00
John McCall
f47c069162
Aggressive dead code elimination.
...
llvm-svn: 135029
2011-07-13 03:03:51 +00:00
John McCall
98de3d74d2
Generalize the routine for destroying an object with static
...
storage duration, then explicitly exempt ownership-qualified
types from it.
llvm-svn: 135028
2011-07-13 03:01:35 +00:00
Douglas Gregor
d29fde248e
Eliminate an incomplete/incorrect attempt to provide support for C++0x
...
unrestricted unions, which ended up attempting to initialize objects
in a union (which CodeGen isn't prepared for). Fixes PR9683.
llvm-svn: 135027
2011-07-13 02:14:02 +00:00