Evan Cheng
6d188f5f1c
Match llvm API change.
...
llvm-svn: 135220
2011-07-14 23:50:56 +00:00
Evan Cheng
1705ab00ab
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes.
...
llvm-svn: 135219
2011-07-14 23:50:31 +00:00
Douglas Gregor
82432f7edf
CMake: Add a new configuration option LLVM_BUILD_CLANG that's
...
available when Clang is found within the LLVM tree. If enabled (the
default), Clang will be built as part of LLVM. If disabled, Clang will
be skipped... and can be built by configuring a separate object
directory just for Clang. This helps break up the monolithic
LLVM+Clang project that many Clang developers use, improving
build/load times.
llvm-svn: 135218
2011-07-14 23:49:55 +00:00
Ted Kremenek
f0b28d7fe5
Fix false negative reported in PR 10358 by using 'Unknown' in -Wuninitialized to avoid cascading warnings. Patch by Kaelyn Uhrain.
...
llvm-svn: 135217
2011-07-14 23:43:06 +00:00
Douglas Gregor
d7f2f9d07b
Tweak the CMake build so that building a project just containing Clang
...
(and linking to an already-build LLVM) works with Xcode. The resulting
Xcode project for Clang is quite a bit smaller and builds/loads faster.
llvm-svn: 135216
2011-07-14 23:42:32 +00:00
Bill Wendling
dafd598f05
* If we have an LSDA, we need to mark it in the encoding.
...
* The personality function should be encoded as an absolute pointer to the function.
llvm-svn: 135215
2011-07-14 23:34:45 +00:00
Johnny Chen
b3f07c1959
Minor change of variable name, from m to b (for breakpoint).
...
llvm-svn: 135214
2011-07-14 23:33:34 +00:00
Argyrios Kyrtzidis
f2a27f40d6
[arcmt] Don't remove retains/releases on a global variable, flag them with errors. rdar://9402555.
...
llvm-svn: 135213
2011-07-14 23:32:04 +00:00
Devang Patel
4771159f9f
Refactor.
...
llvm-svn: 135212
2011-07-14 23:17:49 +00:00
NAKAMURA Takumi
19ed0829a3
cmake/modules/LLVMLibDeps.cmake: Update since r135184.
...
llvm-svn: 135211
2011-07-14 23:12:02 +00:00
Rafael Espindola
699fc4d15c
Revert 135177 to fix PR10363.
...
Revert "For C++11, do more checking of initializer lists up-front, enabling some subset of the final functionality. C just leaves the function early. C++98 runs through the same code path, but has no changed functionality either."
This reverts commit ac420c5053d6aa41d59f782caad9e46e5baaf2c2.
llvm-svn: 135210
2011-07-14 22:58:04 +00:00
Argyrios Kyrtzidis
08903e4c16
[arcmt] Allow -retain of an __unsafe_unretained receiver if the result gets used.
...
Keep the error if the result is unused. rdar://9552694.
llvm-svn: 135209
2011-07-14 22:46:12 +00:00
John McCall
5143181ff9
Teach -Wconversion, -Wsign-compare etc. about division and remainder.
...
llvm-svn: 135208
2011-07-14 22:39:48 +00:00
Devang Patel
1f9913fdb2
Eliminate redundant LLVMContext argument.
...
Improve DbgScope->dump() output.
llvm-svn: 135207
2011-07-14 22:30:56 +00:00
Johnny Chen
331eff3995
Fixed a crasher where entering 'help disasm' on the command line would crash lldb.
...
The reasom of the crash is because of a missing entry in the argument table corresponding to eArgTypeUnsignedInteger.
Add such entry and modify the call site of the crash to go through a fail-fast API to retrieve the argument table.
Add a regression test to TestHelp.py.
llvm-svn: 135206
2011-07-14 22:20:12 +00:00
Devang Patel
cbd3bb27d7
Undo r135191 (i.e. reapply Chris's patch. Now linker maps NamedMDNodes first, so there is not any need to map DebugLoc).
...
llvm-svn: 135205
2011-07-14 22:14:06 +00:00
Devang Patel
d2d49862fc
Link NamedMDNode before linking function bodies.
...
llvm-svn: 135204
2011-07-14 22:13:07 +00:00
Jim Grosbach
03a8a16f32
ARM diagnostic when 's' suffix on mnemonic that can't set flags.
...
For example, "mlss r0, r1, r2, r3".
The MLS instruction does not have a flag-setting variant.
llvm-svn: 135203
2011-07-14 22:04:21 +00:00
Bill Wendling
2d825b5ecf
* Redo the permutation encoding for frameless stacks to be more like what the
...
unwind library expects.
* Comment the permutation encoding for frameless stacks.
llvm-svn: 135202
2011-07-14 22:01:34 +00:00
Devang Patel
4db3844e8b
Add dump()
...
llvm-svn: 135200
2011-07-14 21:50:04 +00:00
Benjamin Kramer
3ceac21d37
Add OperandTypes for Thumb branch targets.
...
llvm-svn: 135199
2011-07-14 21:47:24 +00:00
Benjamin Kramer
9654eef493
Port operand types for ARM and X86 over from EDIS to the .td files.
...
llvm-svn: 135198
2011-07-14 21:47:22 +00:00
Benjamin Kramer
c8dc46bc01
Add a new field to MCOperandInfo that contains information about the type of the Operand.
...
- The actual values are from the MCOI::OperandType enum.
- Teach tblgen to read it from the instruction definition.
- This is a better implementation of the hacks in edis.
llvm-svn: 135197
2011-07-14 21:47:18 +00:00
Jim Grosbach
51849920f1
Add some testcases for ARM MLA/MLS instructions.
...
llvm-svn: 135196
2011-07-14 21:43:05 +00:00
Richard Smith
7b8c3c91f4
PR10359: Template declarations which define classes are not permitted to also contain declarators. Previously we would accept code like this:
...
template<typename T> struct S { } f() { return 0; }
This case now produces a missing ';' diagnostic, since that seems like a much more likely error than an attempt to declare a function or variable in addition to the class template.
Treat this
llvm-svn: 135195
2011-07-14 21:35:26 +00:00
Johnny Chen
4036b587df
Add summary info for SBBreakpoint to the lldb module level docstring.
...
llvm-svn: 135194
2011-07-14 21:32:11 +00:00
Argyrios Kyrtzidis
84b528f3b1
[arcmt] Emit an error for unused -autorelease messages.
...
An unused autorelease is badness. If we remove it the receiver
will likely die immediately while previously it was kept alive
by the autorelease pool. This is bad practice in general, so leave it
and emit an error to force the user to restructure his code.
rdar://9599884
llvm-svn: 135193
2011-07-14 21:26:49 +00:00
Jim Grosbach
26e7449443
ARM MCRR/MCRR2 immediate operand range checking.
...
llvm-svn: 135192
2011-07-14 21:26:42 +00:00
Chris Lattner
fb9f4926d1
revert r135172 until Devang and I figure out the right answer.
...
llvm-svn: 135191
2011-07-14 21:25:42 +00:00
Johnny Chen
993f2b6ccd
Minor wording change.
...
llvm-svn: 135190
2011-07-14 21:23:24 +00:00
Jim Grosbach
d37d2025e9
ARM MCR/MCR2 assembly parsing operand constraints.
...
The immediate operands are restricted to 0-7. Enforce that when parsing
assembly.
llvm-svn: 135189
2011-07-14 21:19:17 +00:00
Johnny Chen
e787813e16
Fix typo in ConnectRemote() docstring.
...
llvm-svn: 135188
2011-07-14 21:17:28 +00:00
Nicolas Geoffray
f470b5b49a
After type-system-rewrite branch update the Cpp backend to not use OpaqueType.
...
llvm-svn: 135186
2011-07-14 21:04:35 +00:00
Jim Grosbach
e336a290a6
Enable some tests we now handle correctly.
...
llvm-svn: 135185
2011-07-14 21:02:23 +00:00
Evan Cheng
bc153d49b7
Next round of MC refactoring. This patch factor MC table instantiations, MC
...
registeration and creation code into XXXMCDesc libraries.
llvm-svn: 135184
2011-07-14 20:59:42 +00:00
Chris Lattner
0c134b52b9
simplify this logic now that GlobalAlias::isDeclaration is fixed.
...
llvm-svn: 135183
2011-07-14 20:23:05 +00:00
Chris Lattner
81210d232d
Fix GlobalValue::isDeclaration() to always consider aliases to be definitions.
...
llvm-svn: 135182
2011-07-14 20:22:18 +00:00
Howard Hinnant
08ad085712
A stawman specification for libc++abi and status page
...
llvm-svn: 135181
2011-07-14 20:16:50 +00:00
Eric Christopher
92464be28c
Check register class matching instead of width of type matching
...
when determining validity of matching constraint. Allow i1
types access to the GR8 reg class for x86.
Fixes PR10352 and rdar://9777108
llvm-svn: 135180
2011-07-14 20:13:52 +00:00
Jim Grosbach
fa18793934
Reorganize ARM assembler aliases.
...
Consolidate the individual declarations together for ease of reference. This
mirrors the organization in X86, as well, so is good for consistency. No
functional change.
llvm-svn: 135179
2011-07-14 19:47:47 +00:00
Rafael Espindola
784ad24bad
Add LLVMConstNamedStruct to the C api to let its users create constants
...
of named struct types.
llvm-svn: 135178
2011-07-14 19:09:08 +00:00
Sebastian Redl
9c61809c23
For C++11, do more checking of initializer lists up-front, enabling some subset of the final functionality. C just leaves the function early. C++98 runs through the same code path, but has no changed functionality either.
...
This is a first baby step towards supporting generalized initializer lists. This also removes an aggregate
test case that was just plain wrong, assuming that non-aggregates couldn't be initialized with initializer lists
in C++11 mode.
llvm-svn: 135177
2011-07-14 19:08:10 +00:00
Sebastian Redl
771ee36966
Fix problems Johannes noticed, and extend test cases further.
...
llvm-svn: 135176
2011-07-14 19:08:01 +00:00
Sebastian Redl
112aa826c7
Remove InitializationSequence::ReferenceBinding, the last redundant sequence kind.
...
llvm-svn: 135175
2011-07-14 19:07:55 +00:00
Chris Lattner
4cc3bcd575
DebugLoc's don't hide any interesting types for TypeFinder to find.
...
llvm-svn: 135174
2011-07-14 18:58:40 +00:00
Chris Lattner
8f29491ffd
manually copy debugloc over to a new instruction in clone() instead
...
of calling getAllMetadata(). This is semantically identical, but doing
it this way avoids unpacking the DebugLoc.
llvm-svn: 135173
2011-07-14 18:57:51 +00:00
Chris Lattner
69eea72779
Stop the ValueMapper from calling getAllMetadata, which unpacks DebugLoc into
...
an MDNode. This saves a bunch of time and memory in the IR linker, e.g. when
doing LTO of files with debug info.
llvm-svn: 135172
2011-07-14 18:53:50 +00:00
Bruno Cardoso Lopes
6778597deb
Add 256-bit load/store recognition and matching in several places.
...
llvm-svn: 135171
2011-07-14 18:50:58 +00:00
Chris Lattner
2dc4b55bd8
simplify
...
llvm-svn: 135170
2011-07-14 18:45:41 +00:00
Benjamin Kramer
1757e7abeb
Don't leak operands when putting them into a shift.
...
llvm-svn: 135169
2011-07-14 18:41:22 +00:00