Commit Graph

91938 Commits

Author SHA1 Message Date
Gabor Greif 239a07c297 back out r114279 as some darwin buildbots get errors compiling clang:
svn merge -c -114279 llvm/include/llvm/Support/Casting.h

llvm-svn: 114280
2010-09-18 12:56:47 +00:00
Gabor Greif d1d99c8483 restrict dyn_cast_or_null to pointer types, just like cast_or_null
llvm-svn: 114279
2010-09-18 12:30:15 +00:00
Gabor Greif a06741b356 do not rely on the implicit-dereference semantics of dyn_cast_or_null
llvm-svn: 114278
2010-09-18 11:55:34 +00:00
Gabor Greif aaa22cf1b6 do not rely on the implicit-dereference semantics of dyn_cast_or_null
llvm-svn: 114277
2010-09-18 11:53:39 +00:00
Gabor Greif c44201c91e remove CallSite::get; it is still present (as protected) in the baseclass, use one of the constructors intead
llvm-svn: 114275
2010-09-18 11:48:36 +00:00
Lang Hames 361de9870a Fixed non-const iterator error.
llvm-svn: 114273
2010-09-18 09:49:08 +00:00
Lang Hames cb1e1017dd Added a separate class (PBQPBuilder) for PBQP Problem construction. This class can be extended to support custom constraints.
For now the allocator still uses the old (internal) construction mechanism by default. This will be phased out soon assuming 
no issues with the builder system come up.

To invoke the new construction mechanism just pass '-regalloc=pbqp -pbqp-builder' to llc. To provide custom constraints a
Target just needs to extend PBQPBuilder and pass an instance of their derived builder to the RegAllocPBQP constructor.

llvm-svn: 114272
2010-09-18 09:07:10 +00:00
Michael J. Spencer 65bd28db99 docs: Tweak wording.
llvm-svn: 114271
2010-09-18 08:32:32 +00:00
Evan Cheng b339f3da0c Fix code that break critical edges for PHI uses. Watch out for multiple PHIs in different blocks.
llvm-svn: 114270
2010-09-18 06:42:17 +00:00
John McCall 386dfc738e static local variables with destructors don't require a global destructor
unless we're on a platform without __cxa_atexit (or use thereof has been
disabled).  This patch actually just disables the check completely for
static locals, but I've filed http://llvm.org/bugs/show_bug.cgi?id=8176 to
track the platform-specific fix.

llvm-svn: 114269
2010-09-18 05:25:11 +00:00
Owen Anderson b92b13d8a0 Invert the logic of reachesChainWithoutSideEffects(). What we want to check is that there is
NO path to the destination containing side effects, not that SOME path contains no side effects.
In  practice, this only manifests with CombinerAA enabled, because otherwise the chain has little
to no branching, so "any" is effectively equivalent to "all".

llvm-svn: 114268
2010-09-18 04:45:14 +00:00
Greg Clayton 340b2baa24 Added a better error message to the "frame variable" when you try to view
frame variables and are not stopped in a valid frame.

llvm-svn: 114267
2010-09-18 04:06:15 +00:00
Greg Clayton f5fb427d85 Fixed an issue with:
(lldb) frame variable --location

Where the address of variables wasn't being formatted consistently.

llvm-svn: 114266
2010-09-18 04:00:06 +00:00
Greg Clayton ed8a705cea General command line help cleanup:
- All single character options will now be printed together
- Changed all options that contains underscores to contain '-' instead
- Made the help come out a little flatter by showing the long and short
  option on the same line.
- Modified the short character for "--ignore-count" options to "-i"

llvm-svn: 114265
2010-09-18 03:37:20 +00:00
Eric Christopher a6ba082cb6 Thumb opcodes for thumb calls.
llvm-svn: 114263
2010-09-18 02:32:38 +00:00
Daniel Dunbar c4f3990f01 lit: Bump version to 0.2.0dev, for no apparent reason.
llvm-svn: 114262
2010-09-18 02:28:15 +00:00
Daniel Dunbar 196024ce1b lit: Tweak setup.py.
llvm-svn: 114261
2010-09-18 02:28:12 +00:00
Daniel Dunbar 07cc4f6b33 lit: These TODOs are done(ish).
llvm-svn: 114260
2010-09-18 02:28:09 +00:00
John McCall f09d96f76d Adjust a fixup's starting branch if it's being resolved because
it reached the outermost scope and it hasn't yet been forwarded
to a cleanup.  Fixed PR8175.

llvm-svn: 114259
2010-09-18 02:24:39 +00:00
Greg Clayton 6ba7815115 Bug #: 8447030
Fixed an issue with ClangASTContext::GetIndexOfChildMemberWithName() 
where objective C ivars were not being found correctly if they were
the second or higher child.

llvm-svn: 114258
2010-09-18 02:11:07 +00:00
Douglas Gregor 112b51e72d Add another text for code completion after recovery
llvm-svn: 114257
2010-09-18 02:10:40 +00:00
Eric Christopher aef6499bf1 Add addrmode5 fp load support. Swap float/thumb operand adding to handle
thumb with floating point.

llvm-svn: 114256
2010-09-18 01:59:37 +00:00
Douglas Gregor eda7e545e6 Continue parsing more postfix expressions, even after semantic
errors. Improves code completion in yet another case.

llvm-svn: 114255
2010-09-18 01:28:11 +00:00
Eric Christopher 30f2300ed2 Floating point stores have a 3rd addressing mode type.
llvm-svn: 114254
2010-09-18 01:23:38 +00:00
John Thompson 1224061281 Added '|' delimiter to separate inline asm multiple alternative constraints for Clang side of support.
llvm-svn: 114253
2010-09-18 01:15:13 +00:00
Greg Clayton a701509229 Fixed the way set/show variables were being accessed to being natively
accessed by the objects that own the settings. The previous approach wasn't
very usable and made for a lot of unnecessary code just to access variables
that were already owned by the objects.

While I fixed those things, I saw that CommandObject objects should really
have a reference to their command interpreter so they can access the terminal
with if they want to output usaage. Fixed up all CommandObjects to take
an interpreter and cleaned up the API to not need the interpreter to be
passed in.

Fixed the disassemble command to output the usage if no options are passed
down and arguments are passed (all disassebmle variants take options, there
are no "args only").

llvm-svn: 114252
2010-09-18 01:14:36 +00:00
John Thompson 9a587aaaa9 Add more error checking to attribute vecreturn
llvm-svn: 114251
2010-09-18 01:12:07 +00:00
John McCall 8ea46b6654 Fix a bug with binding l-values to elided temporaries, and leave a couple
helpful asserts behind.

llvm-svn: 114250
2010-09-18 00:58:34 +00:00
Anton Yartsev 79d6af3839 formatted everything to fit within 80 columns
llvm-svn: 114249
2010-09-18 00:39:16 +00:00
Rafael Espindola 15829c6c4c Add test that was missing in my previous commit.
llvm-svn: 114248
2010-09-18 00:37:27 +00:00
Bill Wendling cbacefd36f Testcase for r114239.
llvm-svn: 114247
2010-09-18 00:26:29 +00:00
Tom Care 0bd3431a5e Revert r114244 since it breaks a test in Analysis.
llvm-svn: 114246
2010-09-18 00:17:17 +00:00
Johnny Chen 49b415de1f Added a hook for the test driver to take an optional config file to customize
the running of the test suite.  Right now, it doesn't do anything with the
config file.

Pass "-c myConfigFile" to specify the config file.

llvm-svn: 114245
2010-09-18 00:16:47 +00:00
Tom Care 0f99e64305 IdempotentOperationChecker no longer reports errors that are post-dominated by a sink. This fixes some false positives that were flagged because a path was incomplete (usually in a loop).
llvm-svn: 114244
2010-09-18 00:06:34 +00:00
Jim Grosbach af5d63583e factor out a simple helper function to create a label for PC-relative
instructions (PICADD, PICLDR, et.al.)

llvm-svn: 114243
2010-09-18 00:05:05 +00:00
Jim Grosbach 8a5a6a6c1e PC-relative pseudo instructions are lowered and printed directly. Any encounter
with one in the generic printing code is an error.

llvm-svn: 114242
2010-09-18 00:04:53 +00:00
Dan Gohman 49c15c0f9f Attempt to XFAIL this test on arm-linux, which is inexplicably failing.
llvm-svn: 114241
2010-09-18 00:04:37 +00:00
Benjamin Kramer de636ca9a8 Fix vmov.f64 disassembly on targets where sizeof(long) != 8.
llvm-svn: 114240
2010-09-17 23:48:07 +00:00
Bill Wendling d632616f86 The MMX shift-with-immediate builtins require the equivalent
shift-with-immediate LLVM intrinsics.

llvm-svn: 114239
2010-09-17 23:46:16 +00:00
Bill Wendling 30983bfcd5 Remove FIXME. The type is correct.
llvm-svn: 114238
2010-09-17 23:45:24 +00:00
Jim Grosbach 3d97920829 Add MC-inst handling for tPICADD
llvm-svn: 114237
2010-09-17 23:41:53 +00:00
Daniel Dunbar 60785eb0f2 Sema/transparent_union: Make sure to add implicit cast when constructing
implicit union values for the transparent_union extension.

llvm-svn: 114236
2010-09-17 23:21:43 +00:00
Ted Kremenek 3586938d37 Tweak in DeclPrinter printing of uses of copy constructors. Patch by Jim Goodnow II.
llvm-svn: 114235
2010-09-17 23:04:38 +00:00
Douglas Gregor 196cf88a01 Update test
llvm-svn: 114234
2010-09-17 23:01:08 +00:00
Bob Wilson cb6db98897 Add target-specific DAG combiner for BUILD_VECTOR and VMOVRRD. An i64
value should be in GPRs when it's going to be used as a scalar, and we use
VMOVRRD to make that happen, but if the value is converted back to a vector
we need to fold to a simple bit_convert.  Radar 8407927.

llvm-svn: 114233
2010-09-17 22:59:05 +00:00
Johnny Chen aa90292126 Fixed a typo and supplied a more appropriate assert message.
llvm-svn: 114232
2010-09-17 22:45:27 +00:00
Douglas Gregor ec06c124f1 Improve recovery when the middle expression of a ternary operator is ill-formed
llvm-svn: 114231
2010-09-17 22:41:34 +00:00
Jim Grosbach 7a6c37d3e7 Teach the (non-MC) instruction printer to use the cannonical names for push/pop,
and shift instructions on ARM. Update the tests to match.

llvm-svn: 114230
2010-09-17 22:36:38 +00:00
Rafael Espindola 0ecde03e9f Avoid relocations in a common case.
llvm-svn: 114229
2010-09-17 22:34:41 +00:00
Johnny Chen b330786d1f Added test cases to FoundationTestCase to exercise lookup of objc data types and
to evaluate expressions.  Marked with @expectedFailure decorators for the time
being.

Enhanced the lldbtest.TestBase.expect() API to allow an additional keyword arg
named "error".  If the client passes "error=True", it signifies that an error
while running the command is expected.  The golden input is then compared
against the return object's error output.

llvm-svn: 114228
2010-09-17 22:28:51 +00:00