platform/upstream/llvm.git
12 years agoA minor tweak to the new volatile lvalue warning: don't warn on "(void)x", where...
Eli Friedman [Thu, 24 May 2012 21:05:41 +0000 (21:05 +0000)]
A minor tweak to the new volatile lvalue warning: don't warn on "(void)x", where "x" refers to a local variable.  This should silence a useless warning in compiler-rt and other places.

llvm-svn: 157414

12 years agoXFAIL this test, which does not pass on trunk since the grand
John McCall [Thu, 24 May 2012 20:58:21 +0000 (20:58 +0000)]
XFAIL this test, which does not pass on trunk since the grand
renaming in r157403.

llvm-svn: 157413

12 years agoSet svn:keywords property to Id
Ted Kremenek [Thu, 24 May 2012 20:16:00 +0000 (20:16 +0000)]
Set svn:keywords property to Id

llvm-svn: 157412

12 years agoNew & improved man page attached, now with standard license added.
Ted Kremenek [Thu, 24 May 2012 20:13:47 +0000 (20:13 +0000)]
New & improved man page attached, now with standard license added.
Plus, a patch for scan-build.

* mdoc corrections
* slightly more compact output
* same license as scan-build
* DESCRIPTION describes
* Default checkers corrected & explained
* Authors credited

The patch adds support for --help-checkers.  It just lists the default
checkers by recursively invoking "scan-build -h" and looking for the
magic '+' signs.

Patch by James Lowden!

llvm-svn: 157411

12 years agoTurn on mips16 pseudo op when compiling for mips16.
Akira Hatanaka [Thu, 24 May 2012 18:37:43 +0000 (18:37 +0000)]
Turn on mips16 pseudo op when compiling for mips16.
Expand test case for this.

Patch by Reed Kotler.

llvm-svn: 157410

12 years agoEnable Mips16 compiler to compile a null program.
Akira Hatanaka [Thu, 24 May 2012 18:32:33 +0000 (18:32 +0000)]
Enable Mips16 compiler to compile a null program.
First code from the Mips16 compiler. Includes trivial test program.

Patch by Reed Kotler.

llvm-svn: 157408

12 years agoobjective-c: Fixes a corner case and interesting bug.
Fariborz Jahanian [Thu, 24 May 2012 18:29:41 +0000 (18:29 +0000)]
objective-c: Fixes a corner case and interesting bug.
Where diagnostic about unfound property is not
issued in the context where a setter is looked up
in situation in which name and property name differ
in their first letter case. // rdar://11363363

llvm-svn: 157407

12 years agoAdding back a right parenthesis that was dropped in r157388.
Meador Inge [Thu, 24 May 2012 18:16:39 +0000 (18:16 +0000)]
Adding back a right parenthesis that was dropped in r157388.

llvm-svn: 157406

12 years agoFix missing Resources/Python directory for macosx build.
Johnny Chen [Thu, 24 May 2012 18:14:18 +0000 (18:14 +0000)]
Fix missing Resources/Python directory for macosx build.

llvm-svn: 157405

12 years ago[objcmt] Add test case for r157395.
Argyrios Kyrtzidis [Thu, 24 May 2012 17:49:22 +0000 (17:49 +0000)]
[objcmt] Add test case for r157395.

llvm-svn: 157404

12 years agoReplace PTX back-end with NVPTX back-end in all places where Clang cares
Justin Holewinski [Thu, 24 May 2012 17:43:12 +0000 (17:43 +0000)]
Replace PTX back-end with NVPTX back-end in all places where Clang cares

NV_CONTRIB

llvm-svn: 157403

12 years ago[analyzer] Minor cleanup to checkers' help text.
Anna Zaks [Thu, 24 May 2012 17:31:59 +0000 (17:31 +0000)]
[analyzer] Minor cleanup to checkers' help text.

llvm-svn: 157402

12 years ago[analyzer] Treat cast of array to reference in the same way as array to
Anna Zaks [Thu, 24 May 2012 17:31:57 +0000 (17:31 +0000)]
[analyzer] Treat cast of array to reference in the same way as array to
pointer.

Fixes one of the crashes reported in PR12874.

llvm-svn: 157401

12 years ago[analyzer] Fix typo. Thanks Jordy.
Anna Zaks [Thu, 24 May 2012 17:31:54 +0000 (17:31 +0000)]
[analyzer] Fix typo. Thanks Jordy.

llvm-svn: 157400

12 years agoAdds menu sidebar to the docs.
Manuel Klimek [Thu, 24 May 2012 17:16:23 +0000 (17:16 +0000)]
Adds menu sidebar to the docs.

llvm-svn: 157399

12 years agoSilence Clang's -Wlogical-op-parentheses warning.
David Blaikie [Thu, 24 May 2012 17:11:00 +0000 (17:11 +0000)]
Silence Clang's -Wlogical-op-parentheses warning.

I'm not sure it's really worth expressing this as a range rather than 3 specific equalities, but it doesn't seem fundamentally wrong either.

llvm-svn: 157398

12 years agoUpdates the tooling docs with the links to the tutorials and
Manuel Klimek [Thu, 24 May 2012 17:09:10 +0000 (17:09 +0000)]
Updates the tooling docs with the links to the tutorials and
adds the menu include.

llvm-svn: 157397

12 years agoAdds a tutorial for how to write clang plugins.
Manuel Klimek [Thu, 24 May 2012 17:07:18 +0000 (17:07 +0000)]
Adds a tutorial for how to write clang plugins.

llvm-svn: 157396

12 years ago[objcmt] Warn when modern objc migrator does not convert a NSNumber message because...
Argyrios Kyrtzidis [Thu, 24 May 2012 16:48:23 +0000 (16:48 +0000)]
[objcmt] Warn when modern objc migrator does not convert a NSNumber message because it requires a cast.

rdar://11525138

llvm-svn: 157395

12 years agoobjc: change option to be -Wobjc-interface-ivars
Fariborz Jahanian [Thu, 24 May 2012 16:19:51 +0000 (16:19 +0000)]
objc: change option to be -Wobjc-interface-ivars

llvm-svn: 157394

12 years agoAdd half support to LLVM (for OpenCL)
Tobias Grosser [Thu, 24 May 2012 15:59:06 +0000 (15:59 +0000)]
Add half support to LLVM (for OpenCL)

Submitted by: Anton Lokhmotov  <Anton.Lokhmotov@arm.com>

Approved by: o Anton Korobeynikov
             o Micah Villmow
             o David Neto

llvm-svn: 157393

12 years agotsan: compilation of tests with newest clang
Dmitry Vyukov [Thu, 24 May 2012 14:55:12 +0000 (14:55 +0000)]
tsan: compilation of tests with newest clang

llvm-svn: 157392

12 years agotsan: fix compilation with newest clang
Dmitry Vyukov [Thu, 24 May 2012 14:50:33 +0000 (14:50 +0000)]
tsan: fix compilation with newest clang

llvm-svn: 157391

12 years agoTesting commit access
Meador Inge [Thu, 24 May 2012 14:20:13 +0000 (14:20 +0000)]
Testing commit access

llvm-svn: 157389

12 years agoasan/tsan: weak interceptors
Dmitry Vyukov [Thu, 24 May 2012 13:54:31 +0000 (13:54 +0000)]
asan/tsan: weak interceptors
The idea isthat asan/tsan can survive if user intercepts the same functions. At the same time user has an ability to call back into asan/tsan runtime. See the following tests for examples:
asan/output_tests/interception_failure_test-linux.cc
asan/output_tests/interception_test-linux.cc
asan/output_tests/interception_malloc_test-linux.cc

llvm-svn: 157388

12 years agoApply review comment from Jordan Rose.
Manuel Klimek [Thu, 24 May 2012 12:46:43 +0000 (12:46 +0000)]
Apply review comment from Jordan Rose.

llvm-svn: 157387

12 years agoPR1255 related changes (case ranges):
Stepan Dyatkovskiy [Thu, 24 May 2012 09:33:20 +0000 (09:33 +0000)]
PR1255 related changes (case ranges):
LowerSwitch::Clusterify : main functinality was replaced with CRSBuilder::optimize, so big part of Clusterify's code was reduced.
test/Transform/LowerSwitch/feature.ll - this test was refactored: grep + count was replaced with FileCheck usage.

llvm-svn: 157384

12 years agotsan: add a flag to control RunningOnValgrind() return value
Dmitry Vyukov [Thu, 24 May 2012 09:24:45 +0000 (09:24 +0000)]
tsan: add a flag to control RunningOnValgrind() return value

llvm-svn: 157383

12 years agoFix -Wcovered-switch-default warning.
Patrik Hägglund [Thu, 24 May 2012 07:51:46 +0000 (07:51 +0000)]
Fix -Wcovered-switch-default warning.

llvm-svn: 157381

12 years agoConvert assert(0) to llvm_unreachable.
Craig Topper [Thu, 24 May 2012 07:02:50 +0000 (07:02 +0000)]
Convert assert(0) to llvm_unreachable.

llvm-svn: 157380

12 years agoRemove 3.1 release notes to get ready for current development cycle.
Bill Wendling [Thu, 24 May 2012 06:42:56 +0000 (06:42 +0000)]
Remove 3.1 release notes to get ready for current development cycle.

llvm-svn: 157379

12 years agoRemove old release notes. Ready them for additions from current development
Bill Wendling [Thu, 24 May 2012 06:38:09 +0000 (06:38 +0000)]
Remove old release notes. Ready them for additions from current development
cycle.

llvm-svn: 157378

12 years agoMark some static arrays as const.
Craig Topper [Thu, 24 May 2012 06:35:32 +0000 (06:35 +0000)]
Mark some static arrays as const.

llvm-svn: 157377

12 years agoUse uint16_t to store registers in static tables. Matches other tables.
Craig Topper [Thu, 24 May 2012 06:09:56 +0000 (06:09 +0000)]
Use uint16_t to store registers in static tables. Matches other tables.

llvm-svn: 157375

12 years agoUse uint16_t to store register number in static tables to match other tables.
Craig Topper [Thu, 24 May 2012 05:55:47 +0000 (05:55 +0000)]
Use uint16_t to store register number in static tables to match other tables.

llvm-svn: 157374

12 years agoMake some opcode tables static and const. Allows code to avoid making copies to pass...
Craig Topper [Thu, 24 May 2012 05:17:00 +0000 (05:17 +0000)]
Make some opcode tables static and const. Allows code to avoid making copies to pass the tables around.

llvm-svn: 157373

12 years agofix Bug 12924
Seth Cantrell [Thu, 24 May 2012 05:14:44 +0000 (05:14 +0000)]
fix Bug 12924

http://llvm.org/bugs/show_bug.cgi?id=12924

This issue was that the source location was pointing to a
non-printable character and so CaretEnd was pointing one
_column_ past the caret but not one _character_ past the
caret. So the conversion between column and byte locations
wasn't working (because the conversion is only valid from
the first column or byte of a character).

llvm-svn: 157372

12 years agoReflect that tblgen is now llvm-tblgen
Joel Jones [Thu, 24 May 2012 04:38:50 +0000 (04:38 +0000)]
Reflect that tblgen is now llvm-tblgen

llvm-svn: 157371

12 years agoDR1152 / PR12931 / PR6177: A candidate function which requires binding a const
Richard Smith [Thu, 24 May 2012 04:29:20 +0000 (04:29 +0000)]
DR1152 / PR12931 / PR6177: A candidate function which requires binding a const
volatile reference to a temporary is not viable. My interpretation is that
DR1152 was a bugfix, not a rule change for C++11, so this is not conditional on
the language mode. This matches g++'s behavior.

llvm-svn: 157370

12 years agoMark a couple arrays as static and const. Use array_lengthof instead of sizeof/sizeof.
Craig Topper [Thu, 24 May 2012 04:22:05 +0000 (04:22 +0000)]
Mark a couple arrays as static and const. Use array_lengthof instead of sizeof/sizeof.

llvm-svn: 157369

12 years agoMark a static array as const.
Craig Topper [Thu, 24 May 2012 04:11:15 +0000 (04:11 +0000)]
Mark a static array as const.

llvm-svn: 157368

12 years agoMark a static table as const. Shrink opcode size in static tables to uint16_t. Simpli...
Craig Topper [Thu, 24 May 2012 03:59:11 +0000 (03:59 +0000)]
Mark a static table as const. Shrink opcode size in static tables to uint16_t. Simplify loop iterating over one of those tables. No functional change intended.

llvm-svn: 157367

12 years agoChange the "Debug" build to use the current MacOSX SDK. Fix the swig builder to...
Jim Ingham [Thu, 24 May 2012 01:16:09 +0000 (01:16 +0000)]
Change the "Debug" build to use the current MacOSX SDK.  Fix the swig builder to have an explicit
short-circuit of the Python SWIG building, rather than relying on the SDKROOT being set.

llvm-svn: 157363

12 years agoAdd a warning to diagnose statements in C++ like "*(volatile int*)x;". Conceptually...
Eli Friedman [Thu, 24 May 2012 00:47:05 +0000 (00:47 +0000)]
Add a warning to diagnose statements in C++ like "*(volatile int*)x;".  Conceptually, this is part of -Wunused-value, but I added a separate flag -Wunused-volatile-lvalue so it doesn't get turned off by accident with -Wno-unused-value.  I also made a few minor improvements to existing unused value warnings in the process.  <rdar://problem/11516811>.

llvm-svn: 157362

12 years agordar://problem/11457634
Johnny Chen [Thu, 24 May 2012 00:43:00 +0000 (00:43 +0000)]
rdar://problem/11457634

Supports the use-case scenario of immediately continuing the process once attached.
Add a simple completion test case from "process attach --con" to "process attach --continue ".

llvm-svn: 157361

12 years agoimplement Sema support for the alloc_size attribute
Nuno Lopes [Thu, 24 May 2012 00:22:00 +0000 (00:22 +0000)]
implement Sema support for the alloc_size attribute
Portions of this patch by Xi Wang. Reviewed by Jordy Rose. Thank you both.

Codegen support will follow soon.

llvm-svn: 157360

12 years agomodern objc translation: Add translation of @autoreleasepool
Fariborz Jahanian [Wed, 23 May 2012 23:47:20 +0000 (23:47 +0000)]
modern objc translation: Add translation of @autoreleasepool
statement. // rdar://11474836.

llvm-svn: 157359

12 years agoTidy up naming for consistency and other cleanup. No functional change intended.
Chad Rosier [Wed, 23 May 2012 23:45:10 +0000 (23:45 +0000)]
Tidy up naming for consistency and other cleanup.  No functional change intended.

llvm-svn: 157358

12 years agoAdd a test case for global live range splitting.
Jakob Stoklund Olesen [Wed, 23 May 2012 23:42:23 +0000 (23:42 +0000)]
Add a test case for global live range splitting.

llvm-svn: 157357

12 years ago[libclang] Report CXType_ObjCId for 'const id', not CXType_Typedef.
Argyrios Kyrtzidis [Wed, 23 May 2012 23:30:16 +0000 (23:30 +0000)]
[libclang] Report CXType_ObjCId for 'const id', not CXType_Typedef.

rdar://11357807

llvm-svn: 157356

12 years agoAdd a last resort tryInstructionSplit() to RAGreedy.
Jakob Stoklund Olesen [Wed, 23 May 2012 22:37:27 +0000 (22:37 +0000)]
Add a last resort tryInstructionSplit() to RAGreedy.

Live ranges with a constrained register class may benefit from splitting
around individual uses. It allows the remaining live range to use a
larger register class where it may allocate. This is like spilling to a
different register class.

This is only attempted on constrained register classes.

<rdar://problem/11438902>

llvm-svn: 157354

12 years agoAdd SBProcess::GetNumSupportedHardwareWatchpoints() API and export it through the...
Johnny Chen [Wed, 23 May 2012 22:34:34 +0000 (22:34 +0000)]
Add SBProcess::GetNumSupportedHardwareWatchpoints() API and export it through the Python scripting bridge.
Add/modify some test cases.

llvm-svn: 157353

12 years agoclang/test/Tooling: Update comments in left 2 tests on XFAIL. They are incompatible...
NAKAMURA Takumi [Wed, 23 May 2012 22:24:33 +0000 (22:24 +0000)]
clang/test/Tooling: Update comments in left 2 tests on XFAIL. They are incompatible to -fms-compatibility.

llvm-svn: 157352

12 years agoclang/test/Tooling: Tweak 4 tests to escape the path separator s/\\/\\\\/g in JSON.
NAKAMURA Takumi [Wed, 23 May 2012 22:24:27 +0000 (22:24 +0000)]
clang/test/Tooling: Tweak 4 tests to escape the path separator s/\\/\\\\/g in JSON.

llvm-svn: 157351

12 years agoTooling: Canonicalize Key in IndexByFile[]. llvm::sys::path::native() may be used...
NAKAMURA Takumi [Wed, 23 May 2012 22:24:20 +0000 (22:24 +0000)]
Tooling: Canonicalize Key in IndexByFile[]. llvm::sys::path::native() may be used here.

It fixes test/Tooling on Win32 hosts.

llvm-svn: 157350

12 years agoForgot to reverse conditional.
Bill Wendling [Wed, 23 May 2012 22:12:50 +0000 (22:12 +0000)]
Forgot to reverse conditional.

llvm-svn: 157349

12 years agoReduce indentation by early detection of 'continue'. No functionality change.
Bill Wendling [Wed, 23 May 2012 22:09:50 +0000 (22:09 +0000)]
Reduce indentation by early detection of 'continue'. No functionality change.

llvm-svn: 157348

12 years ago[arcmt] Remove an unused -autorelease, without failing with error, for this
Argyrios Kyrtzidis [Wed, 23 May 2012 21:50:04 +0000 (21:50 +0000)]
[arcmt] Remove an unused -autorelease, without failing with error, for this
idiom that is used commonly in setters:

   [backingValue autorelease];
   backingValue = [newValue retain]; // in general a +1 assign

rdar://9914061

llvm-svn: 157347

12 years ago[driver] Have the crash diagnostics print the clang version information.
Chad Rosier [Wed, 23 May 2012 21:38:47 +0000 (21:38 +0000)]
[driver] Have the crash diagnostics print the clang version information.
rdar://11518308

llvm-svn: 157346

12 years agoAdd the capability to display the number of supported hardware watchpoints to the...
Johnny Chen [Wed, 23 May 2012 21:09:52 +0000 (21:09 +0000)]
Add the capability to display the number of supported hardware watchpoints to the "watchpoint list" command.

Add default Process::GetWatchpointSupportInfo() impl which returns an error of "not supported".
Add "qWatchpointSupportInfo" packet to the gdb communication layer to support this, and modify TestWatchpointCommands.py to test it.

llvm-svn: 157345

12 years agollvm-ld does not exist anymore, use llvm-link instead.
Nicolas Geoffray [Wed, 23 May 2012 20:34:19 +0000 (20:34 +0000)]
llvm-ld does not exist anymore, use llvm-link instead.

llvm-svn: 157342

12 years agoFix typo in flag to opt, and also a CHECK-NEXT that doesn't follow a
Kaelyn Uhrain [Wed, 23 May 2012 20:21:36 +0000 (20:21 +0000)]
Fix typo in flag to opt, and also a CHECK-NEXT that doesn't follow a
CHECK. The latter error was hidden by the former, and the test harness
used by e.g. "make check" silently ignored that opt was printing an
error message about an unknown flag instead of running on the test file.

llvm-svn: 157341

12 years agoCorrectly deal with identity copies in RegisterCoalescer.
Jakob Stoklund Olesen [Wed, 23 May 2012 20:21:06 +0000 (20:21 +0000)]
Correctly deal with identity copies in RegisterCoalescer.

Now that the coalescer keeps live intervals and machine code in sync at
all times, it needs to deal with identity copies differently.

When merging two virtual registers, all identity copies are removed
right away. This means that other identity copies must come from
somewhere else, and they are going to have a value number.

Deal with such copies by merging the value numbers before erasing the
copy instruction. Otherwise, we leave dangling value numbers in the live
interval.

This fixes PR12927.

llvm-svn: 157340

12 years agoUpdate checker build.
Ted Kremenek [Wed, 23 May 2012 19:57:38 +0000 (19:57 +0000)]
Update checker build.

llvm-svn: 157339

12 years agoFix how CMake appends -m32 to linker command-lines
Tim Northover [Wed, 23 May 2012 18:42:02 +0000 (18:42 +0000)]
Fix how CMake appends -m32 to linker command-lines

llvm-svn: 157337

12 years ago[arm-fast-isel] Add support for non-global callee.
Chad Rosier [Wed, 23 May 2012 18:38:57 +0000 (18:38 +0000)]
[arm-fast-isel] Add support for non-global callee.
Patch by Jush Lu <jush.msn@gmail.com>.

llvm-svn: 157336

12 years agoAdds the Refactoring library, which is a layer on top of the Tooling library
Manuel Klimek [Wed, 23 May 2012 16:29:20 +0000 (16:29 +0000)]
Adds the Refactoring library, which is a layer on top of the Tooling library
that allows easy refactoring across translation units.

llvm-svn: 157331

12 years agoextra ';' outside of a function [-pedantic,-Wextra-semi]
Filipe Cabecinhas [Wed, 23 May 2012 16:27:09 +0000 (16:27 +0000)]
extra ';' outside of a function [-pedantic,-Wextra-semi]

llvm-svn: 157330

12 years agoBoundsChecking: add a couple of simple tests and fix a bug in branch emition
Nuno Lopes [Wed, 23 May 2012 16:24:52 +0000 (16:24 +0000)]
BoundsChecking: add a couple of simple tests and fix a bug in branch emition

llvm-svn: 157329

12 years agoSmall fixes: actually return a boolean and remove semi-colons.
Filipe Cabecinhas [Wed, 23 May 2012 16:24:11 +0000 (16:24 +0000)]
Small fixes: actually return a boolean and remove semi-colons.

llvm-svn: 157328

12 years agoProcess::Destroy should Halt before it tries to destroy so we don't have race conditi...
Jim Ingham [Wed, 23 May 2012 15:46:31 +0000 (15:46 +0000)]
Process::Destroy should Halt before it tries to destroy so we don't have race conditions where we are in the middle of trying to service an event when we go to Destroy.
The AttachCompletionHandler should note that it has restarted the target if it indeed does so.

llvm-svn: 157327

12 years agoMove AsanShadowRangeIsAvailable() from mac to posix.
Evgeniy Stepanov [Wed, 23 May 2012 15:21:50 +0000 (15:21 +0000)]
Move AsanShadowRangeIsAvailable() from mac to posix.

llvm-svn: 157326

12 years agorevert r156383: removal of TYPE_CODE_FUNCTION_OLD
Nuno Lopes [Wed, 23 May 2012 15:19:39 +0000 (15:19 +0000)]
revert r156383: removal of TYPE_CODE_FUNCTION_OLD
Apparently LLVM only stopped emitting this after LLVM 3.0

llvm-svn: 157325

12 years agoFix the inliner so that the optsize function attribute don't alter the
Patrik Hägglund [Wed, 23 May 2012 13:42:57 +0000 (13:42 +0000)]
Fix the inliner so that the optsize function attribute don't alter the
inline threshold if the global inline threshold is lower (as for -Oz).

Reviewed by Chandler Carruth and Bill Wendling.

llvm-svn: 157323

12 years agoFixed typo in r156905.
Patrik Hägglund [Wed, 23 May 2012 12:34:56 +0000 (12:34 +0000)]
Fixed typo in r156905.

llvm-svn: 157320

12 years agoSmall fix for the debug output from PBQP (PR12822).
Patrik Hägglund [Wed, 23 May 2012 12:12:58 +0000 (12:12 +0000)]
Small fix for the debug output from PBQP (PR12822).

llvm-svn: 157319

12 years agoUse zero-based shadow by default on Android.
Evgeniy Stepanov [Wed, 23 May 2012 11:52:37 +0000 (11:52 +0000)]
Use zero-based shadow by default on Android.

llvm-svn: 157318

12 years agoUse zero-based shadow by default on Android.
Evgeniy Stepanov [Wed, 23 May 2012 11:52:12 +0000 (11:52 +0000)]
Use zero-based shadow by default on Android.

llvm-svn: 157317

12 years agoPR1255(case ranges) related changes in Local Transformations.
Stepan Dyatkovskiy [Wed, 23 May 2012 08:18:26 +0000 (08:18 +0000)]
PR1255(case ranges) related changes in Local Transformations.

llvm-svn: 157315

12 years agoasan: fix typo in comment
Dmitry Vyukov [Wed, 23 May 2012 06:14:21 +0000 (06:14 +0000)]
asan: fix typo in comment

llvm-svn: 157314

12 years agoTidy up spacing.
Craig Topper [Wed, 23 May 2012 05:44:51 +0000 (05:44 +0000)]
Tidy up spacing.

llvm-svn: 157313

12 years agosmall refinement to r157218 to save a tiny amount of table size in the common
Chris Lattner [Wed, 23 May 2012 05:19:18 +0000 (05:19 +0000)]
small refinement to r157218 to save a tiny amount of table size in the common
case.

llvm-svn: 157312

12 years agoCorrect the starting location for instantiations of field declarations which
Richard Smith [Wed, 23 May 2012 04:22:22 +0000 (04:22 +0000)]
Correct the starting location for instantiations of field declarations which
start with a cv-qualifier. DeclaratorDecl::getTypeSpecStartLoc() does not
produce the location of the first type-specifier (the cv-qualifier) in this
case, because we don't track source locations for cv-qualifiers.

No test here: I've not found a way to test this with a lit-style test, and
introducing a gtest test for this seems unwarranted. Suggestions welcome!

Patch by Daniel Jasper!

llvm-svn: 157311

12 years agoIf the first argument of __builtin_object_size can be folded to a constant
Richard Smith [Wed, 23 May 2012 04:13:20 +0000 (04:13 +0000)]
If the first argument of __builtin_object_size can be folded to a constant
pointer, but such folding encounters side-effects, ignore the side-effects
rather than performing them at runtime: CodeGen generates wrong code for
__builtin_object_size in that case.

llvm-svn: 157310

12 years agoFix indentation of wrapped line for readability. No functional change.
Craig Topper [Wed, 23 May 2012 03:59:53 +0000 (03:59 +0000)]
Fix indentation of wrapped line for readability. No functional change.

llvm-svn: 157309

12 years agoClang 3.1 is out: turn the relevant C++11 status boxes green.
Richard Smith [Wed, 23 May 2012 01:38:11 +0000 (01:38 +0000)]
Clang 3.1 is out: turn the relevant C++11 status boxes green.

llvm-svn: 157308

12 years agoMove file to be more representative.
Eric Christopher [Wed, 23 May 2012 00:18:46 +0000 (00:18 +0000)]
Move file to be more representative.

llvm-svn: 157306

12 years agoCheck that we have an unknown upper bound range for our flexible array members.
Eric Christopher [Wed, 23 May 2012 00:18:43 +0000 (00:18 +0000)]
Check that we have an unknown upper bound range for our flexible array members.

llvm-svn: 157305

12 years agoEmit C++11 enum class information if it exists.
Eric Christopher [Wed, 23 May 2012 00:09:47 +0000 (00:09 +0000)]
Emit C++11 enum class information if it exists.

Part of rdar://11496790

llvm-svn: 157304

12 years agoAdd support for C++11 enum classes in llvm.
Eric Christopher [Wed, 23 May 2012 00:09:20 +0000 (00:09 +0000)]
Add support for C++11 enum classes in llvm.

Part of rdar://11496790

llvm-svn: 157303

12 years agoAdd more convenience registers to x86_64 and a simple test scenario:
Johnny Chen [Tue, 22 May 2012 23:32:12 +0000 (23:32 +0000)]
Add more convenience registers to x86_64 and a simple test scenario:

        self.expect("expr -- $ax == (($ah << 8) | $al)",
            substrs = ['true'])

llvm-svn: 157302

12 years agoaddress some of John Criswell's comments
Nuno Lopes [Tue, 22 May 2012 22:02:19 +0000 (22:02 +0000)]
address some of John Criswell's comments
teach computeAllocSize about realloc, reallocf, and valloc

llvm-svn: 157298

12 years agoARMDisassembler.cpp: Fix utf8 char in comments.
NAKAMURA Takumi [Tue, 22 May 2012 21:47:02 +0000 (21:47 +0000)]
ARMDisassembler.cpp: Fix utf8 char in comments.

llvm-svn: 157292

12 years agoIntegrated a fix for an ARM disassembler crash
Sean Callanan [Tue, 22 May 2012 21:42:43 +0000 (21:42 +0000)]
Integrated a fix for an ARM disassembler crash
(0xd 0xd 0xa0 0xf4, or "vld2hs.8 {d0[], d1[]}, [r0]!")

llvm-svn: 157289

12 years agoRecognize the MS inheritance attributes and turn them into attributes
John McCall [Tue, 22 May 2012 21:28:12 +0000 (21:28 +0000)]
Recognize the MS inheritance attributes and turn them into attributes
on the RecordDecl.  Persist the MS portability type attributes and
ignore them in Sema rather than the parser.

Patch by João Matos!

llvm-svn: 157288

12 years agoFix line endings.
John McCall [Tue, 22 May 2012 21:28:07 +0000 (21:28 +0000)]
Fix line endings.

llvm-svn: 157287

12 years agoFix a typo.
Johnny Chen [Tue, 22 May 2012 19:41:53 +0000 (19:41 +0000)]
Fix a typo.

llvm-svn: 157278

12 years agoAdd a test case to check that eax's content equals the lower half of rax.
Johnny Chen [Tue, 22 May 2012 19:37:01 +0000 (19:37 +0000)]
Add a test case to check that eax's content equals the lower half of rax.
Plus fix the test class name as well as wrong directory path.

llvm-svn: 157277

12 years agoThe RegisterInfo descriptors for the convenience registers can specify an offset...
Johnny Chen [Tue, 22 May 2012 18:59:38 +0000 (18:59 +0000)]
The RegisterInfo descriptors for the convenience registers can specify an offset to be added to the offset as derived from
the value_regs field, which is useful for future expansion purposes.  As of now, we have:

    calculated_offset_of_eax = offset_of_rax + (offset_of_eax_from_the_descriptor which is 0)

llvm-svn: 157275

12 years agoUntabify and 80-col.
Eric Christopher [Tue, 22 May 2012 18:45:24 +0000 (18:45 +0000)]
Untabify and 80-col.

llvm-svn: 157274