Enrico Granata
a5d3ba008b
<rdar://problem/12462575> Refactoring a block of shared code in the NSString data formatter
...
llvm-svn: 165557
2012-10-09 22:44:18 +00:00
Micah Villmow
7edfe5f6b2
Add in some interfaces that will allow easier access to the pointer address space.
...
llvm-svn: 165554
2012-10-09 22:27:29 +00:00
Bill Wendling
ff758fbd45
Use the attribute enums to query if a function has an attribute.
...
llvm-svn: 165551
2012-10-09 21:49:51 +00:00
Bill Wendling
8ccd6ca199
Use the attribute enums to query if a parameter has an attribute.
...
llvm-svn: 165550
2012-10-09 21:38:14 +00:00
Sean Callanan
880ee17fb8
Cleanup in the AppleObjCRuntimeV2 to make descriptors
...
lighter-weight so that the cache can be populated
faster.
- I Added a ProcessWP to the runtime so I can
take it out of the individual descriptors, saving
space;
- I made the constructors for the descriptors
private so that only the runtime can invoke them;
and
- I removed the constructor that takes a ValueObject
since the logic for using a ValueObject is in the
runtime.
llvm-svn: 165549
2012-10-09 21:21:35 +00:00
Bill Wendling
b3723341f3
Revert r165547 to fix build.
...
llvm-svn: 165548
2012-10-09 20:56:48 +00:00
Bill Wendling
5abc0ef174
Use a single location for calculating the alignments.
...
llvm-svn: 165547
2012-10-09 20:55:16 +00:00
Benjamin Kramer
79da0f0c4d
Initialize the end loc in ObjCInterfaceTypeLoc.
...
Found by valgrind.
llvm-svn: 165546
2012-10-09 20:49:29 +00:00
Rafael Espindola
fc3fc0c936
The clang driver has a fairly fancy support for executing gcc instead of
...
clang itself. This dates back to clang's early days and while it looks like
some of it is still used (for kext for example), other parts are probably dead.
Remove the -ccc-clang-archs option and associated code. I don't think there
is any remaining setup where clang doesn't support an architecture but it can
expect an working gcc cross compiler to be available.
A nice side effect is that tests no longer need to differentiate architectures
that are included in production builds of clang and those that are not.
llvm-svn: 165545
2012-10-09 20:46:28 +00:00
Sean Silva
2f7bf41091
tblgen: Rename handleDependencies -> createDependencyFile
...
llvm-svn: 165544
2012-10-09 20:39:28 +00:00
Bill Wendling
a5661eb300
Remove this now unused variable macro.
...
llvm-svn: 165543
2012-10-09 20:35:11 +00:00
Sean Silva
0cd3536505
tblgen: Move dependency file output to a separate function.
...
This keeps it out of the main flow of TableGenMain.
llvm-svn: 165542
2012-10-09 20:29:03 +00:00
Bill Wendling
4caad41f1e
Use appropriate method calls to get the alignment value.
...
llvm-svn: 165541
2012-10-09 20:28:54 +00:00
Chad Rosier
126d0b8c4d
Whitespace.
...
llvm-svn: 165540
2012-10-09 20:15:02 +00:00
Bill Wendling
9864a6557e
Inline the checks for mutually exclusive attributes since they're used in only one module.
...
llvm-svn: 165539
2012-10-09 20:11:19 +00:00
Argyrios Kyrtzidis
a7a108173f
Simplify the code using SmallVector::append(), as suggested by Benjamin Kramer.
...
llvm-svn: 165538
2012-10-09 20:08:43 +00:00
Chad Rosier
31753473a6
[driver] Remove redundant cases due to overlapping commits between Ted (r165531, 165532) and I
...
(r165534), but leave the test case in place.
llvm-svn: 165537
2012-10-09 20:01:58 +00:00
Richard Smith
e30752c93b
-fcatch-undefined-behavior: emit calls to the runtime library whenever one of the checks fails.
...
llvm-svn: 165536
2012-10-09 19:52:38 +00:00
Rafael Espindola
be5613c0a7
Enable response files in all tools. Patch by Liu, Yaxun (Sam). I have simplified
...
the test.
llvm-svn: 165535
2012-10-09 19:52:10 +00:00
Chad Rosier
3530682558
[driver] Remove the -W[no-][int-conversion|constant-conversion|enum-conversion]
...
options when clang invokes cc1plus for i386 kexts.
rdar://12459188
llvm-svn: 165534
2012-10-09 19:43:33 +00:00
Richard Smith
68b3014cd3
Add a runtime diagnostics library for Clang's -fcatch-undefined-behavior.
...
llvm-svn: 165533
2012-10-09 19:34:32 +00:00
Ted Kremenek
a88397d9ba
Don't forward -Wenum-conversion to cc1plus.
...
llvm-svn: 165532
2012-10-09 19:29:48 +00:00
Ted Kremenek
b476241840
Don't forward -Wint-conversion to cc1plus.
...
llvm-svn: 165531
2012-10-09 19:29:46 +00:00
Bill Wendling
7c04e04a75
Move the 'FunctionOnly' attributes thingy inside of the Attributes class.
...
llvm-svn: 165530
2012-10-09 19:01:18 +00:00
Ted Kremenek
aa4ca653ae
Create variable for warning group -Wshorten-64-to-32.
...
llvm-svn: 165521
2012-10-09 18:46:14 +00:00
Jason Molenda
0a72520f22
Patch from Dan Malea to fix a build break I introduced yesterday.
...
Thanks again Dan!
llvm-svn: 165519
2012-10-09 18:40:44 +00:00
Argyrios Kyrtzidis
353f6a477e
Move the functionality that looks for ObjC overridden methods from
...
ASTContext to the ObjCMethodDecl, and have the more generic
ASTContext::getOverriddenMethods() use the ObjCMethodDecl::getOverriddenMethods()
function.
llvm-svn: 165518
2012-10-09 18:19:01 +00:00
Douglas Gregor
ab88e86dd0
Not everyone uses C++11, apparently
...
llvm-svn: 165517
2012-10-09 17:51:56 +00:00
Greg Clayton
77fbc8176d
Changes to clean up the runtime and how the ISA caches are managed.
...
llvm-svn: 165516
2012-10-09 17:51:53 +00:00
Douglas Gregor
7c0990ba35
Make the order of visitation of the pending bodies in the AST reader
...
deterministic.
llvm-svn: 165515
2012-10-09 17:50:23 +00:00
Douglas Gregor
62692ce7f3
Allow MapVector clients to specify the map and vector types, and add a
...
clear() method.
llvm-svn: 165514
2012-10-09 17:49:42 +00:00
Douglas Gregor
a6017bbd52
When we load a function or method body from an AST file, we check
...
whether that function/method already has a body (loaded from some
other AST file), as introduced in r165137. Delay this check until
after the redeclaration chains have been wired up.
While I'm here, make the loading of method bodies lazy.
llvm-svn: 165513
2012-10-09 17:21:28 +00:00
Michael Ilseman
7eaf29c61e
More descriptive, doxygen-ed comments
...
llvm-svn: 165512
2012-10-09 17:05:59 +00:00
Sean Silva
94c7604832
tblgen: Remove pointless method call.
...
llvm-svn: 165511
2012-10-09 17:03:11 +00:00
Michael Ilseman
c93cffb590
New EarlyCSE tests for CSE-ing across commutativity.
...
llvm-svn: 165510
2012-10-09 16:58:13 +00:00
Michael Ilseman
336cb79fdf
Update EarlyCSE's SimpleValues to use Hashing.h for their hashes. Expanded the hashing and equality to allow for equality modulo commutativity for binary ops, and comparisons with swapping of predicates.
...
llvm-svn: 165509
2012-10-09 16:57:38 +00:00
Michael Ilseman
f876de06d2
New value_op_iterator for User. This allows other code to iterate over the User's operands directly as values, which can be convenient.
...
llvm-svn: 165508
2012-10-09 16:55:14 +00:00
Greg Clayton
85c2a72f2a
Fixed the redo.py script to emit correct arch and compiler options after dotest.py was switched over to use argparse.
...
llvm-svn: 165507
2012-10-09 16:54:55 +00:00
David Chisnall
3705125cc8
Improvements to MIPS64 assembler:
...
- Teach it about dadd[i] instructions and move pseudo-instruction
- Make it parse the register names correctly (for N32 / N64)
llvm-svn: 165506
2012-10-09 16:27:43 +00:00
Micah Villmow
89021e4740
Add in the first step of the multiple pointer support. This adds in support to the data layout for specifying a per address space pointer size.
...
The next step is to update the optimizers to allow them to optimize the different address spaces with this information.
llvm-svn: 165505
2012-10-09 16:06:12 +00:00
Alexey Samsonov
7b6ce747d6
Determine supported archs for compiler-rt libraries on Linux by trying to compile a simple executable
...
llvm-svn: 165504
2012-10-09 16:05:50 +00:00
Alexey Samsonov
be5ae06dec
Fixup for r165097: build 32-bit ASan compiler-rt library on 64-bit Linux only if just-built clang can build simple 32-bit executables
...
llvm-svn: 165503
2012-10-09 16:03:52 +00:00
Douglas Gregor
8cb174654f
If a macro has been #undef'd in a precompiled header, we still need to
...
write out the macro history for that macro. Similarly, we need to cope
with reading a macro definition that has been #undef'd.
Take advantage of this new ability so that global code-completion
results can refer to #undef'd macros, rather than losing them
entirely. For multiply defined/#undef'd macros, we will still get the
wrong result, but it's better than getting no result.
llvm-svn: 165502
2012-10-09 16:01:50 +00:00
Benjamin Kramer
97e5949068
Clearing a SmallPtrSet is still expensive, split it out from OverloadCandidateSet::clear and don't do it on destruction.
...
llvm-svn: 165501
2012-10-09 15:52:25 +00:00
Alexey Samsonov
2747e22051
Fixup for r165490: Use DenseMap instead of std::map. Simplify the loop in CollectFunctionDIs.
...
llvm-svn: 165498
2012-10-09 10:34:52 +00:00
Bill Wendling
908126a745
Move the 'ParameterOnly' variable inside of the Attributes class and make it a method.
...
llvm-svn: 165497
2012-10-09 09:51:10 +00:00
Bill Wendling
217c9b1916
Remove the now dead VarArgsIncompatible variable.
...
llvm-svn: 165496
2012-10-09 09:33:01 +00:00
Bill Wendling
1c1b324ccf
Use the enum value of the attributes when removing them from the attributes builder.
...
llvm-svn: 165495
2012-10-09 09:17:28 +00:00
Bill Wendling
93f70b78fd
Use the enum value of the attributes when adding them to the attributes builder.
...
llvm-svn: 165494
2012-10-09 09:11:20 +00:00
Alexey Samsonov
83ecabe6e6
[Sanitizer] Remove unneeded returns after UNIMPLEMENTED macro
...
llvm-svn: 165493
2012-10-09 08:51:08 +00:00