platform/upstream/llvm.git
11 years agoTypeLegalizer: Do not generate target specific nodes with illegal types, because...
Nadav Rotem [Fri, 14 Dec 2012 21:20:37 +0000 (21:20 +0000)]
TypeLegalizer: Do not generate target specific nodes with illegal types, because we cant type-legalize them.

llvm-svn: 170245

11 years agoSkipping the DeadStripTestCase.test_with_dwarf test on Linux because the Linux ld...
Andrew Kaylor [Fri, 14 Dec 2012 21:11:46 +0000 (21:11 +0000)]
Skipping the DeadStripTestCase.test_with_dwarf test on Linux because the Linux ld lacks support for the -dead_strip option.

llvm-svn: 170244

11 years agoRelease notes for dragonegg 3.2.
Duncan Sands [Fri, 14 Dec 2012 21:10:59 +0000 (21:10 +0000)]
Release notes for dragonegg 3.2.

llvm-svn: 170243

11 years agoAvoid possible overflow when reading inferior memory (and logging is enabled)
Daniel Malea [Fri, 14 Dec 2012 21:07:07 +0000 (21:07 +0000)]
Avoid possible overflow when reading inferior memory (and logging is enabled)

Patch by Matt Kopec!

llvm-svn: 170242

11 years agoEnabling ItaniumABILanguageRuntime and SymbolFileDWARFDebugMap plugins on non-Apple...
Andrew Kaylor [Fri, 14 Dec 2012 21:03:37 +0000 (21:03 +0000)]
Enabling ItaniumABILanguageRuntime and SymbolFileDWARFDebugMap plugins on non-Apple platforms.

llvm-svn: 170241

11 years agoFix a crash in ValueTracking on vectors of pointers.
Nadav Rotem [Fri, 14 Dec 2012 20:43:49 +0000 (20:43 +0000)]
Fix a crash in ValueTracking on vectors of pointers.

llvm-svn: 170240

11 years agoFixed a typo.
Filipe Cabecinhas [Fri, 14 Dec 2012 20:38:58 +0000 (20:38 +0000)]
Fixed a typo.

llvm-svn: 170239

11 years agofixed line endings
Anton Yartsev [Fri, 14 Dec 2012 20:28:48 +0000 (20:28 +0000)]
fixed line endings

llvm-svn: 170238

11 years agoThis patch removes some nondeterminism from direct object file output
Bill Schmidt [Fri, 14 Dec 2012 20:28:38 +0000 (20:28 +0000)]
This patch removes some nondeterminism from direct object file output
for TLS dynamic models on 64-bit PowerPC ELF.  The default sort routine
for relocations only sorts on the r_offset field; but with TLS, there
can be two relocations with the same r_offset.  For PowerPC, this patch
sorts secondarily on descending r_type, which matches the behavior
expected by the linker.

llvm-svn: 170237

11 years agoAdd GCC instructions to build section of website
Daniel Malea [Fri, 14 Dec 2012 20:02:21 +0000 (20:02 +0000)]
Add GCC instructions to build section of website

llvm-svn: 170236

11 years agotsan: synchronize connect->accept calls
Dmitry Vyukov [Fri, 14 Dec 2012 20:01:58 +0000 (20:01 +0000)]
tsan: synchronize connect->accept calls

llvm-svn: 170235

11 years agoadded post-statement callback to CXXNewExpr and pre-statement callback to CXXDeleteExpr
Anton Yartsev [Fri, 14 Dec 2012 19:48:34 +0000 (19:48 +0000)]
added post-statement callback to CXXNewExpr and pre-statement callback to CXXDeleteExpr

llvm-svn: 170234

11 years agoDon't hit an assertion failure when calculating the __PRETTY_FUNCTION__
Argyrios Kyrtzidis [Fri, 14 Dec 2012 19:44:11 +0000 (19:44 +0000)]
Don't hit an assertion failure when calculating the __PRETTY_FUNCTION__
of a member function with parenthesized declarator.

Like this test case:

class Foo {
  const char *(baz)() {
    return __PRETTY_FUNCTION__;
  }
};

llvm-svn: 170233

11 years ago[analyzer] Propagate the checker's state from checkBranchCondition
Anna Zaks [Fri, 14 Dec 2012 19:08:20 +0000 (19:08 +0000)]
[analyzer] Propagate the checker's state from checkBranchCondition

Fixes a bug, where we were dropping the state modifications from the
checkBranchCondition checker callback.

llvm-svn: 170232

11 years ago[analyzer] Refactor: Store visited Decls instead of CallGraphNodes.
Anna Zaks [Fri, 14 Dec 2012 19:08:17 +0000 (19:08 +0000)]
[analyzer] Refactor: Store visited Decls instead of CallGraphNodes.

llvm-svn: 170231

11 years agoUse renamed CommonOptionsParser member functions
Edwin Vane [Fri, 14 Dec 2012 18:59:24 +0000 (18:59 +0000)]
Use renamed CommonOptionsParser member functions

GetCompilations() and GetSourcePathLists() were renamed to match LLVM style.

Reviewed By: Alexander Kornienko

llvm-svn: 170230

11 years agoStyle and Doc fix for CommonOptionsParser
Edwin Vane [Fri, 14 Dec 2012 18:58:25 +0000 (18:58 +0000)]
Style and Doc fix for CommonOptionsParser

- Renaming GetCompilations() and GetSourcePathList() to follow LLVM
  style.
- Updating docs to reflect name change.
- Also updating help text to not mention clang-check since this class
  can be used by any tool.

Reviewed By: Alexander Kornienko

llvm-svn: 170229

11 years ago[preprocessor] For errors at a function macro invocation, also include
Argyrios Kyrtzidis [Fri, 14 Dec 2012 18:53:47 +0000 (18:53 +0000)]
[preprocessor] For errors at a function macro invocation, also include
a note about where the macro is defined.

llvm-svn: 170228

11 years agoAdd more reset methods to make all objects that the backend may use for outputting...
Pedro Artigas [Fri, 14 Dec 2012 18:52:11 +0000 (18:52 +0000)]
Add more reset methods to make all objects that the backend may use for outputting code have a reset, some are not used but were declared for completeness

llvm-svn: 170227

11 years agordar://12753946
Shuxin Yang [Fri, 14 Dec 2012 18:46:06 +0000 (18:46 +0000)]
rdar://12753946

Implement rule : "x * (select cond 1.0, 0.0) -> select cond x, 0.0"

llvm-svn: 170226

11 years ago[CMake] Move libxml2 stuff from clang to llvm/cmake.
NAKAMURA Takumi [Fri, 14 Dec 2012 18:30:20 +0000 (18:30 +0000)]
[CMake] Move libxml2 stuff from clang to llvm/cmake.

llvm-svn: 170225

11 years agoChange crash handling to use eStateStopped rather than eStateCrashed.
Andrew Kaylor [Fri, 14 Dec 2012 18:24:34 +0000 (18:24 +0000)]
Change crash handling to use eStateStopped rather than eStateCrashed.

llvm-svn: 170224

11 years agoDon't require a space between the two ">" in "vector<id<protocol>>" in objc++11.
Nico Weber [Fri, 14 Dec 2012 18:22:38 +0000 (18:22 +0000)]
Don't require a space between the two ">" in "vector<id<protocol>>" in objc++11.

C++11 allowed writing "vector<vector<int>>" without a space between the two ">".
This change allows this for protocols in template lists too in -std=c++11 mode,
and improves the diagnostic in c++98 mode.

llvm-svn: 170223

11 years agoThis patch improves the 64-bit PowerPC InitialExec TLS support by providing
Bill Schmidt [Fri, 14 Dec 2012 17:02:38 +0000 (17:02 +0000)]
This patch improves the 64-bit PowerPC InitialExec TLS support by providing
for a wider range of GOT entries that can hold thread-relative offsets.
This matches the behavior of GCC, which was not documented in the PPC64 TLS
ABI.  The ABI will be updated with the new code sequence.

Former sequence:

  ld 9,x@got@tprel(2)
  add 9,9,x@tls

New sequence:

  addis 9,2,x@got@tprel@ha
  ld 9,x@got@tprel@l(9)
  add 9,9,x@tls

Note that a linker optimization exists to transform the new sequence into
the shorter sequence when appropriate, by replacing the addis with a nop
and modifying the base register and relocation type of the ld.

llvm-svn: 170209

11 years ago[Sanitizer] remove extra typename
Alexey Samsonov [Fri, 14 Dec 2012 15:37:35 +0000 (15:37 +0000)]
[Sanitizer] remove extra typename

llvm-svn: 170208

11 years agotsan: add test for errno spoiling in signal handler
Dmitry Vyukov [Fri, 14 Dec 2012 14:42:40 +0000 (14:42 +0000)]
tsan: add test for errno spoiling in signal handler

llvm-svn: 170207

11 years ago[sanitizer] add AllocatorLeakTest
Kostya Serebryany [Fri, 14 Dec 2012 14:20:29 +0000 (14:20 +0000)]
[sanitizer] add AllocatorLeakTest

llvm-svn: 170206

11 years agotsan: add test for malloc/free in signal handler
Dmitry Vyukov [Fri, 14 Dec 2012 13:56:27 +0000 (13:56 +0000)]
tsan: add test for malloc/free in signal handler

llvm-svn: 170205

11 years agoAdd MemorySanitizer.cpp to the lint script.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:48:55 +0000 (13:48 +0000)]
Add MemorySanitizer.cpp to the lint script.

llvm-svn: 170204

11 years agoFix lint warnings in MemorySanitizer.cpp.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:48:31 +0000 (13:48 +0000)]
Fix lint warnings in MemorySanitizer.cpp.

llvm-svn: 170203

11 years agotsan: fix lint warning
Dmitry Vyukov [Fri, 14 Dec 2012 13:46:03 +0000 (13:46 +0000)]
tsan: fix lint warning

llvm-svn: 170202

11 years agoThe CellSPU backend is more than experimental, it's dead now...
Chandler Carruth [Fri, 14 Dec 2012 13:44:05 +0000 (13:44 +0000)]
The CellSPU backend is more than experimental, it's dead now...

llvm-svn: 170201

11 years agoRemove a section that was in 3.1's notes.
Chandler Carruth [Fri, 14 Dec 2012 13:43:59 +0000 (13:43 +0000)]
Remove a section that was in 3.1's notes.

Just give a shout if this was actually still important....

llvm-svn: 170200

11 years ago[msan] Origin stores and loads do not need explicit alignment.
Evgeniy Stepanov [Fri, 14 Dec 2012 13:43:11 +0000 (13:43 +0000)]
[msan] Origin stores and loads do not need explicit alignment.

Origin address is always 4 byte aligned, and the access type is always i32.

llvm-svn: 170199

11 years agoRemove several entries from the 3.2 release notes that were in the 3.1
Chandler Carruth [Fri, 14 Dec 2012 13:41:02 +0000 (13:41 +0000)]
Remove several entries from the 3.2 release notes that were in the 3.1
release notes already. =]

llvm-svn: 170198

11 years agoFix the order of these sections of the release notes.
Chandler Carruth [Fri, 14 Dec 2012 13:37:18 +0000 (13:37 +0000)]
Fix the order of these sections of the release notes.

llvm-svn: 170197

11 years agoAdd a rough draft of some content about the new SROA. I'll try to proof
Chandler Carruth [Fri, 14 Dec 2012 13:37:17 +0000 (13:37 +0000)]
Add a rough draft of some content about the new SROA. I'll try to proof
read this and clean it up tomorrow, but hopefully it's a good
placeholder.

llvm-svn: 170196

11 years agoDelete a long-stale "if its ready" comment. All indications is that this
Chandler Carruth [Fri, 14 Dec 2012 13:37:12 +0000 (13:37 +0000)]
Delete a long-stale "if its ready" comment. All indications is that this
will look a bit different when we have time to get it ready to turn on,
and we won't likely need this reminder.

llvm-svn: 170195

11 years agoProvide some actual highlight bullets for Clang.
Chandler Carruth [Fri, 14 Dec 2012 13:22:57 +0000 (13:22 +0000)]
Provide some actual highlight bullets for Clang.

If anyone has better highlights (I'm obviously biased by the things that
I'm excited about) jump in and add them!

llvm-svn: 170194

11 years ago[asan] more asan_allocator2 code: record the allocation stack trace, implement calloc/etc
Kostya Serebryany [Fri, 14 Dec 2012 13:16:19 +0000 (13:16 +0000)]
[asan] more asan_allocator2 code: record the allocation stack trace, implement calloc/etc

llvm-svn: 170193

11 years ago[msan] Refactor default shadow propagation and origin tracking.
Evgeniy Stepanov [Fri, 14 Dec 2012 12:54:18 +0000 (12:54 +0000)]
[msan] Refactor default shadow propagation and origin tracking.

This change moves the code for default shadow propagaition (handleShadowOr)
and origin tracking (setOriginForNaryOp) into a new builder-like class. Also
gets rid of handleShadowOrBinary.

llvm-svn: 170192

11 years agotsan: fix build
Dmitry Vyukov [Fri, 14 Dec 2012 12:24:11 +0000 (12:24 +0000)]
tsan: fix build

llvm-svn: 170191

11 years ago[asan] more asan_allocator2 code: actually un/poison shadow on malloc/free
Kostya Serebryany [Fri, 14 Dec 2012 12:15:09 +0000 (12:15 +0000)]
[asan] more asan_allocator2 code: actually un/poison shadow on malloc/free

llvm-svn: 170190

11 years ago[Sanitizer] use INTERCEPT_FUNCTION(foo) instead of CHECK(INTERCEPT_FUNCTION(foo)...
Alexey Samsonov [Fri, 14 Dec 2012 11:52:02 +0000 (11:52 +0000)]
[Sanitizer] use INTERCEPT_FUNCTION(foo) instead of CHECK(INTERCEPT_FUNCTION(foo)) - this check may fail on Linux if user program defines its own version of library function foo

llvm-svn: 170189

11 years agoTargets.cpp: [cygwin] Add the predefined macro "_X86_", according to newer version...
NAKAMURA Takumi [Fri, 14 Dec 2012 10:17:26 +0000 (10:17 +0000)]
Targets.cpp: [cygwin] Add the predefined macro "_X86_", according to newer version of cygwin/w32api.

llvm-svn: 170188

11 years agotsan: disable allocator tests in debug build
Dmitry Vyukov [Fri, 14 Dec 2012 10:17:22 +0000 (10:17 +0000)]
tsan: disable allocator tests in debug build

llvm-svn: 170187

11 years agotsan: comment out debug output in test
Dmitry Vyukov [Fri, 14 Dec 2012 10:12:14 +0000 (10:12 +0000)]
tsan: comment out debug output in test

llvm-svn: 170186

11 years agotsan: add sanity test for Go runtime into presubmit test
Dmitry Vyukov [Fri, 14 Dec 2012 10:10:57 +0000 (10:10 +0000)]
tsan: add sanity test for Go runtime into presubmit test

llvm-svn: 170185

11 years agotsan: add socketpair() interceptor and test
Dmitry Vyukov [Fri, 14 Dec 2012 09:57:42 +0000 (09:57 +0000)]
tsan: add socketpair() interceptor and test

llvm-svn: 170184

11 years agoChange TargetLowering::getLoadExtAction to take an MVT, instead of
Patrik Hagglund [Fri, 14 Dec 2012 09:05:13 +0000 (09:05 +0000)]
Change TargetLowering::getLoadExtAction to take an MVT, instead of
EVT.

llvm-svn: 170183

11 years agoHave Sema::ActOnStartOfFunctionDef return the declaration that was passed it.
Argyrios Kyrtzidis [Fri, 14 Dec 2012 06:54:03 +0000 (06:54 +0000)]
Have Sema::ActOnStartOfFunctionDef return the declaration that was passed it.

This fixes the missing warning here:

struct S {
    template <typename T>
    void meth() {
        char arr[3];
        arr[4] = 0; // warning: array index 4 is past the end of the array
    }
};

template <typename T>
void func() {
    char arr[3];
    arr[4] = 0; // no warning
}

llvm-svn: 170180

11 years agoRemove code from Sema::ActOnStartOfFunctionTemplateDef that duplicates what
Argyrios Kyrtzidis [Fri, 14 Dec 2012 06:53:58 +0000 (06:53 +0000)]
Remove code from Sema::ActOnStartOfFunctionTemplateDef that duplicates what
Sema::ActOnStartOfFunctionDef is already doing.

llvm-svn: 170179

11 years agofix another spello
Nico Weber [Fri, 14 Dec 2012 02:41:18 +0000 (02:41 +0000)]
fix another spello

llvm-svn: 170177

11 years agofix spello
Nico Weber [Fri, 14 Dec 2012 02:40:09 +0000 (02:40 +0000)]
fix spello

llvm-svn: 170176

11 years agoclang/test/CodeGenCXX/lambda-expressions.cpp: Relax expression for -Asserts.
NAKAMURA Takumi [Fri, 14 Dec 2012 02:35:04 +0000 (02:35 +0000)]
clang/test/CodeGenCXX/lambda-expressions.cpp: Relax expression for -Asserts.

"entry:" is not met in -Asserts build.

llvm-svn: 170175

11 years agoCleaned up the UUID mismatch just printing itself whenever it wants to by allowing...
Greg Clayton [Fri, 14 Dec 2012 02:15:00 +0000 (02:15 +0000)]
Cleaned up the UUID mismatch just printing itself whenever it wants to by allowing an optional feedback stream to be passed along when getting the symbol vendor.

llvm-svn: 170174

11 years ago<rdar://problem/12878674>
Greg Clayton [Fri, 14 Dec 2012 02:13:44 +0000 (02:13 +0000)]
<rdar://problem/12878674>

Remove debug asserts.

llvm-svn: 170173

11 years agorevert r170166 - disable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 01:57:00 +0000 (01:57 +0000)]
revert r170166 - disable the loop vectorizer.

llvm-svn: 170172

11 years agoRmoved the old LLVM disassembler based on libedis.
Sean Callanan [Fri, 14 Dec 2012 01:29:59 +0000 (01:29 +0000)]
Rmoved the old LLVM disassembler based on libedis.

llvm-svn: 170171

11 years agoRefactor dump methods to make RegionBindingsRef printable in the debugger.
Ted Kremenek [Fri, 14 Dec 2012 01:23:13 +0000 (01:23 +0000)]
Refactor dump methods to make RegionBindingsRef printable in the debugger.

llvm-svn: 170170

11 years agoMade the struct test case actually use an expression
Sean Callanan [Fri, 14 Dec 2012 00:56:57 +0000 (00:56 +0000)]
Made the struct test case actually use an expression
instead of falling through to the "frame variable"
code.

llvm-svn: 170169

11 years agoSome incorrect debug information caused LLDB
Sean Callanan [Fri, 14 Dec 2012 00:54:13 +0000 (00:54 +0000)]
Some incorrect debug information caused LLDB
to report a structure with an array of size 1
at the end without accounting for that array
when reporting the struct's total size to Clang.

LLDB now coerces such an array to size 0.

<rdar://problem/12822204>

llvm-svn: 170168

11 years agoTrigger the display of error and output in sourced commands from the result object...
Enrico Granata [Fri, 14 Dec 2012 00:52:54 +0000 (00:52 +0000)]
Trigger the display of error and output in sourced commands from the result object's status instead of the presence of text in the error stream
This should be more consistent with the notion of command success/failure and avoids spewing warnings that the user might not care about
There will need to be an option to specify the level of verbosity desired (never show anything, only show failures, errors and warning, everything)

llvm-svn: 170167

11 years agoEnable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 00:30:34 +0000 (00:30 +0000)]
Enable the loop vectorizer.

llvm-svn: 170166

11 years agoFix a parser_type to get created with the right AST, and also make variables made...
Greg Clayton [Fri, 14 Dec 2012 00:26:21 +0000 (00:26 +0000)]
Fix a parser_type to get created with the right AST, and also make variables made from symbols to not be "void * const", but just "void *".

llvm-svn: 170165

11 years agoMake the test less sensitive to the inline threshold.
Nadav Rotem [Fri, 14 Dec 2012 00:26:15 +0000 (00:26 +0000)]
Make the test less sensitive to the inline threshold.

llvm-svn: 170164

11 years agoFixing the -f option so that one specify multiple filters, e.g.
Enrico Granata [Fri, 14 Dec 2012 00:07:09 +0000 (00:07 +0000)]
Fixing the -f option so that one specify multiple filters, e.g.

./dotest.py  -C clang --arch x86_64 --arch i386  -v -t -f ObjCDataFormatterTestCase.test_appkit_with_dsym_and_run_command -f ObjCDataFormatterTestCase.test_appkit_with_dwarf_and_run_command -f TestObjCBuiltinTypes.test_with_dsym_and_python_api -f TestObjCBuiltinTypes.test_with_dwarf_and_python_api -f ObjCDataFormatterTestCase.test_appkit_with_dsym_and_run_command -f ObjCDataFormatterTestCase.test_appkit_with_dwarf_and_run_command -f TestObjCBuiltinTypes.test_with_dsym_and_python_api -f -TestObjCBuiltinTypes.test_with_dwarf_and_python_api

The previous implementation would only remember the last filter passed, and consequently break redo.py

llvm-svn: 170163

11 years agoDisable the loop vectorizer.
Nadav Rotem [Fri, 14 Dec 2012 00:02:07 +0000 (00:02 +0000)]
Disable the loop vectorizer.

llvm-svn: 170162

11 years ago<rdar://problem/11689939>
Enrico Granata [Thu, 13 Dec 2012 23:50:33 +0000 (23:50 +0000)]
<rdar://problem/11689939>

Supporting a compact display syntax for ObjC pointers where 0x00.....0 is replaced by a much more legible "nil"
e.g. this would show:
(NSArray *) $2 = nil
instead of:
(NSArray *) $2 = 0x0000000000000000 <nil>

llvm-svn: 170161

11 years agoMake sure the __invoke function for lambdas returns properly. Per bug report on...
Eli Friedman [Thu, 13 Dec 2012 23:37:17 +0000 (23:37 +0000)]
Make sure the __invoke function for lambdas returns properly.  Per bug report on IRC>

llvm-svn: 170160

11 years agoUse the new MI bundling API in MachineInstrBundle itself.
Jakob Stoklund Olesen [Thu, 13 Dec 2012 23:23:46 +0000 (23:23 +0000)]
Use the new MI bundling API in MachineInstrBundle itself.

The new API is higher level than just manipulating the bundle flags
directly, and the setIsInsideBundle() function will disappear soon.

llvm-svn: 170159

11 years agoRemove two popcount patterns which we are already able to recognize.
Shuxin Yang [Thu, 13 Dec 2012 23:16:19 +0000 (23:16 +0000)]
Remove two popcount patterns which we are already able to recognize.

llvm-svn: 170158

11 years agoEnable the Loop Vectorizer by default for O2 and O3. Disable if-conversion by default...
Nadav Rotem [Thu, 13 Dec 2012 23:11:54 +0000 (23:11 +0000)]
Enable the Loop Vectorizer by default for O2 and O3. Disable if-conversion by default. I plan to revert this patch later today.

llvm-svn: 170157

11 years agoDebug Info: add support to mark member variables as artificial
David Blaikie [Thu, 13 Dec 2012 22:43:07 +0000 (22:43 +0000)]
Debug Info: add support to mark member variables as artificial

This is the LLVM portion of r170154.

llvm-svn: 170156

11 years agofix comment.
Chris Lattner [Thu, 13 Dec 2012 22:34:43 +0000 (22:34 +0000)]
fix comment.

llvm-svn: 170155

11 years agoDebug Info: Emit vtables pointer members as artificial.
David Blaikie [Thu, 13 Dec 2012 22:29:06 +0000 (22:29 +0000)]
Debug Info: Emit vtables pointer members as artificial.

I wasn't sure where to put the test case for this, but this seemed like as good
a place as any. I had to reorder the tests here to make them legible while
still matching the order of metadata output in the IR file (for some reason
making it virtual changed the ordering).

Relevant commit to fix up LLVM to actually respect 'artificial' member
variables is coming once I write up a test case for it.

llvm-svn: 170154

11 years agoFixed a thinko in the handling of the case where more than one thread had stopped...
Jim Ingham [Thu, 13 Dec 2012 22:24:15 +0000 (22:24 +0000)]
Fixed a thinko in the handling of the case where more than one thread had stopped with real stop reasons at the same time.
Should be that if any of the threads wants to stop, we should stop.  The opposite was what was actually happening

<rdar://problem/12869725>

llvm-svn: 170153

11 years agoRemoved the == and != operators from ArchSpec, since
Sean Callanan [Thu, 13 Dec 2012 22:07:14 +0000 (22:07 +0000)]
Removed the == and != operators from ArchSpec, since
equality can be strict or loose and we want code to
explicitly choose one or the other.

Also renamed the Compare function to IsEqualTo, to
avoid confusion.

<rdar://problem/12856749>

llvm-svn: 170152

11 years ago[PCH] Make the new PCH format (control block) backwards compatible and
Argyrios Kyrtzidis [Thu, 13 Dec 2012 21:38:23 +0000 (21:38 +0000)]
[PCH] Make the new PCH format (control block) backwards compatible and
don't crash when loading a PCH with the older format.

The introduction of the control block broke compatibility with PCHs from
older versions. This patch allows loading (and rejecting) PCHs from an older
version and allows newer PCHs to be rejected from older clang versions as well.

rdar://12821386

llvm-svn: 170150

11 years agoThis is another cleanup patch for 64-bit PowerPC TLS processing. I had
Bill Schmidt [Thu, 13 Dec 2012 20:57:10 +0000 (20:57 +0000)]
This is another cleanup patch for 64-bit PowerPC TLS processing.  I had
some hackery in place that hid my poor use of TblGen, which I've now sorted
out and cleaned up.  No change in observable behavior, so no new test cases.

llvm-svn: 170149

11 years agoChange TargetLowering::setTypeAction to take an MVT, instead fo EVT.
Patrik Hagglund [Thu, 13 Dec 2012 20:42:43 +0000 (20:42 +0000)]
Change TargetLowering::setTypeAction to take an MVT, instead fo EVT.

llvm-svn: 170148

11 years agoAdd support for current Ubuntu Quantal and the upcoming Raring.
Rafael Espindola [Thu, 13 Dec 2012 20:26:05 +0000 (20:26 +0000)]
Add support for current Ubuntu Quantal and the upcoming Raring.
Patch by Martin Nowack.

llvm-svn: 170147

11 years ago<rdar://problem/12700464>
Enrico Granata [Thu, 13 Dec 2012 20:20:11 +0000 (20:20 +0000)]
<rdar://problem/12700464>

Fixing an issue where errors in command files sourced as arguments to command-line lldb (e.g. ./lldb -s foo.cmd) would not be shown to the user

llvm-svn: 170146

11 years agodocs: Improve discussion of syntax highlighting.
Sean Silva [Thu, 13 Dec 2012 20:14:25 +0000 (20:14 +0000)]
docs: Improve discussion of syntax highlighting.

llvm-svn: 170145

11 years agoDocumentation: CompilerWriterInfo.rst: update link to Intel documentation
Dmitri Gribenko [Thu, 13 Dec 2012 20:02:11 +0000 (20:02 +0000)]
Documentation: CompilerWriterInfo.rst: update link to Intel documentation

Replaces old Pentium 4 documentation link with generic current documentation link.

Patch by Kevin Schoedel.

llvm-svn: 170144

11 years agoRevert 170049 because it fails with an assertion on one of the spec2000 workloads.
Nadav Rotem [Thu, 13 Dec 2012 19:58:10 +0000 (19:58 +0000)]
Revert 170049 because it fails with an assertion on one of the spec2000 workloads.

llvm-svn: 170143

11 years agoFix warnings with -DNDEBUG
Tom Stellard [Thu, 13 Dec 2012 19:38:52 +0000 (19:38 +0000)]
Fix warnings with -DNDEBUG

Patch by: NAKAMURA Takumi

llvm-svn: 170142

11 years agoThis is just a clean-up patch that simplifies the initial-exec TLS logic by
Bill Schmidt [Thu, 13 Dec 2012 18:45:54 +0000 (18:45 +0000)]
This is just a clean-up patch that simplifies the initial-exec TLS logic by
avoiding use of machine operand flags.  No change in observable behavior, so
no new test cases.

llvm-svn: 170141

11 years agoChange TargetLowering::getRepRegClassFor to take an MVT, instead of
Patrik Hagglund [Thu, 13 Dec 2012 18:45:35 +0000 (18:45 +0000)]
Change TargetLowering::getRepRegClassFor to take an MVT, instead of
EVT.

Accordingly, change RegDefIter to contain MVTs instead of EVTs.

llvm-svn: 170140

11 years ago[analyzer] Fix doc error (wrong param name) in ObjCSuperCallChecker.
Jordan Rose [Thu, 13 Dec 2012 18:26:05 +0000 (18:26 +0000)]
[analyzer] Fix doc error (wrong param name) in ObjCSuperCallChecker.

Thanks for the -Wdocumentation catch, Dmitri!

llvm-svn: 170139

11 years agoisl: detect vector parallelism
Sebastian Pop [Thu, 13 Dec 2012 16:52:41 +0000 (16:52 +0000)]
isl: detect vector parallelism

llvm-svn: 170138

11 years agoUpdate CMake build corresponding to r170135.
NAKAMURA Takumi [Thu, 13 Dec 2012 16:24:59 +0000 (16:24 +0000)]
Update CMake build corresponding to r170135.

Thanks to Saleem Abdulrasool, aka compnerd!

llvm-svn: 170136

11 years agoDont use/link ARCMT, StaticAnalyzer and Rewriter to clang when the user
Roman Divacky [Thu, 13 Dec 2012 16:09:42 +0000 (16:09 +0000)]
Dont use/link ARCMT, StaticAnalyzer and Rewriter to clang when the user
specifies not to. Dont build ASTMatchers with Rewriter disabled and
StaticAnalyzer when it's disabled.

Without all those three, the clang binary shrinks (x86_64) from ~36MB
to ~32MB (unstripped).

llvm-svn: 170135

11 years agoAdd options to disable building of ARCMT, Rewriter and Static Analyzer
Roman Divacky [Thu, 13 Dec 2012 16:07:19 +0000 (16:07 +0000)]
Add options to disable building of ARCMT, Rewriter and Static Analyzer
in clang. The default remains to build those.

llvm-svn: 170134

11 years agoDocumentation: add AutomaticReferenceCounting.rst to the toctree
Dmitri Gribenko [Thu, 13 Dec 2012 16:06:00 +0000 (16:06 +0000)]
Documentation: add AutomaticReferenceCounting.rst to the toctree

llvm-svn: 170133

11 years agoDocumentation: convert AutomaticReferenceCounting.html to reST
Dmitri Gribenko [Thu, 13 Dec 2012 16:04:37 +0000 (16:04 +0000)]
Documentation: convert AutomaticReferenceCounting.html to reST

Patch by Anastasi Voitova with with small fixes by me.

llvm-svn: 170132

11 years agotsan: fix compilation with -pedantic
Dmitry Vyukov [Thu, 13 Dec 2012 15:26:04 +0000 (15:26 +0000)]
tsan: fix compilation with -pedantic

llvm-svn: 170131

11 years agoFix spelling
Joel Jones [Thu, 13 Dec 2012 15:25:07 +0000 (15:25 +0000)]
Fix spelling

llvm-svn: 170130

11 years agoJITEventListener.h: Use llvm-config.h instead of config.h.
NAKAMURA Takumi [Thu, 13 Dec 2012 15:03:38 +0000 (15:03 +0000)]
JITEventListener.h: Use llvm-config.h instead of config.h.

llvm-svn: 170129

11 years agoRevert r170020, "Simplify negated bit test", for now.
NAKAMURA Takumi [Thu, 13 Dec 2012 14:28:16 +0000 (14:28 +0000)]
Revert r170020, "Simplify negated bit test", for now.

This assumes (1 << n) is always not zero. Consider n is greater than word size.
Although I know it is undefined, this transforms undefined behavior hidden.

This led clang unexpected behavior with some failures. I will investigate to fix undefined shl in clang.

llvm-svn: 170128