Commit Graph

146429 Commits

Author SHA1 Message Date
Richard Smith 8ea9720b90 For -Wignored-qualifiers, don't warn on qualifiers which we acquire via a
typedef. Also don't warn on the _Atomic type specifier, just on the _Atomic
type qualifier.

llvm-svn: 178218
2013-03-28 03:27:52 +00:00
Richard Smith 8bff9616ef Teach -Wigored-qualifiers about exotic flavors of declarator and the _Atomic type qualifier.
llvm-svn: 178217
2013-03-28 02:51:21 +00:00
John Thompson 3b1ee2b87f modularize - Updated futures comment.
llvm-svn: 178216
2013-03-28 02:46:25 +00:00
David Blaikie 5692e72f30 Revert "Adding DIImportedModules to DIScopes."
This reverts commit 342d92c7a0adeabc9ab00f3f0d88d739fe7da4c7.

Turns out we're going with a different schema design to represent
DW_TAG_imported_modules so we won't need this extra field.

llvm-svn: 178215
2013-03-28 02:44:59 +00:00
John Thompson 9663d8c46d modularize - Fixed poor array usage.
llvm-svn: 178214
2013-03-28 02:44:31 +00:00
David Blaikie 8663941068 Revert "Update debug info test for schema change made to LLVM."
This reverts commit 5035c483b7fcbf0fa2a7afba24fa35a10995d195.

This schema change wasn't necessary after all. I'm going ith a different
solution that will hopefully use space more conservatively.

llvm-svn: 178213
2013-03-28 02:44:15 +00:00
David Blaikie c66c07d444 Fix a default on covered switch found by -Wcovered-switch-default
Introduced in r178207

llvm-svn: 178212
2013-03-28 02:30:37 +00:00
Richard Smith 1e8c3b8c02 Remove outdated FIXME.
llvm-svn: 178211
2013-03-28 01:56:34 +00:00
Richard Smith 8e1ac33ec7 Support C11 _Atomic type qualifier. This is more-or-less just syntactic sugar for the _Atomic type specifier.
llvm-svn: 178210
2013-03-28 01:55:44 +00:00
Jason Molenda d37a8a9e2e Debugserver fix for launching iOS apps who are named "com.apple.something"
- the ".app" would be treated as the app bundle final characters
and the SpringBoard launch would fail.
<rdar://problem/13258935> 

llvm-svn: 178209
2013-03-28 01:48:21 +00:00
Akira Hatanaka 99866dd535 Check if Type is a vector before calling function Type::getVectorNumElements.
llvm-svn: 178208
2013-03-28 01:28:02 +00:00
John Thompson 4e4d9b3abf modularize - revised to group duplicate symbols together in the error output.
llvm-svn: 178207
2013-03-28 01:20:19 +00:00
Enrico Granata 198125a8ff <rdar://problem/13412986>
Holding the Python lock while we call the Python C API to post-process objects returned from the OS plugins
This should avoid issues where some Python objects get invalidated while we are in the middle of processing them and we end up with an invalid Python state and a crash

llvm-svn: 178206
2013-03-28 00:27:30 +00:00
Jim Ingham 5cb9a184e0 Protect against the case where the current inlined depth is wrong, and leads us to think we can't even get the
frame at index 0.  We should ALWAYS be able to get that.

<rdar://problem/13497571>

llvm-svn: 178205
2013-03-28 00:13:30 +00:00
Jim Ingham 23460c369c Use the error from ValidatePlan.
llvm-svn: 178204
2013-03-28 00:08:00 +00:00
Jim Ingham bafdb8d977 The other half of the checkin to produce better error messages when the ThreadPlanCallFunction isn't valid.
llvm-svn: 178203
2013-03-28 00:07:20 +00:00
Jim Ingham 7d7931de4a RunThreadPlan should make sure the plan passed in is valid before running it.
<rdar://problem/13485541>

llvm-svn: 178202
2013-03-28 00:05:34 +00:00
Jim Ingham ea06f3bf4c Return a useful error message from ValidatePlan if the expression can't be made for some reason.
llvm-svn: 178201
2013-03-28 00:04:05 +00:00
Richard Smith 89b466c603 Fold together the two implementations of 6.7.3p2 in SemaType. Fix two bugs, each of which was only present in one version:
* Give the right diagnostic for 'restrict' applied to a non-pointer, non-reference type.
 * Don't reject 'restrict' applied indirectly to an Objective-C object pointer type (eg, through template instantiation).

llvm-svn: 178200
2013-03-28 00:03:10 +00:00
Argyrios Kyrtzidis c36633c47a [Parser] Don't code-complete twice.
When we are consuming the current token just to enter a new token stream, we push
the current token in the back of the stream so that we get it again.

Unfortunately this had the effect where if the current token is a code-completion one,
we would code-complete once during consuming it and another time after the stream ended.

Fix this by making sure that, in this case, ConsumeAnyToken() will consume a code-completion
token without invoking code-completion.

rdar://12842503

llvm-svn: 178199
2013-03-27 23:58:17 +00:00
Richard Smith deec07403c Don't reject __restrict applied to a dependent type; it might instantiate to a pointer or reference type.
llvm-svn: 178198
2013-03-27 23:36:39 +00:00
Bill Wendling 55ab0c5438 Simplify test to use a count for the number of notes expected.
llvm-svn: 178196
2013-03-27 23:26:09 +00:00
Richard Smith 74e3d39710 compiler-rt part of r178194. Remove ubsan test for diagnostic on inf/nan conversion between floating-point types.
llvm-svn: 178195
2013-03-27 23:21:10 +00:00
Richard Smith 2b01d5089b UBSan: Don't diagnose inf/nan conversions between floating-point types. It's far from clear whether these have undefined behavior, and these checks are helping no-one. Keep the double->float overflow warnings, though, since those are useful in practice, even though it's unclear whether such operations have defined behavior.
llvm-svn: 178194
2013-03-27 23:20:25 +00:00
Preston Gurd d6be4bf87f This patch follows is a follow up to r178171, which uses the register
form of call in preference to memory indirect on Atom.

In this case, the patch applies the optimization to the code for reloading
spilled registers.

The patch also includes changes to sibcall.ll and movgs.ll, which were
failing on the Atom buildbot after the first patch was applied.

This patch by Sriram Murali.

llvm-svn: 178193
2013-03-27 23:16:18 +00:00
Enrico Granata 8cd208e39c This test case was not doing the right thing with libc++ being used and was generating spurious over-completion warning flags
llvm-svn: 178192
2013-03-27 23:08:54 +00:00
Greg Clayton 5160ce5c72 <rdar://problem/13521159>
LLDB is crashing when logging is enabled from lldb-perf-clang. This has to do with the global destructor chain as the process and its threads are being torn down.

All logging channels now make one and only one instance that is kept in a global pointer which is never freed. This guarantees that logging can correctly continue as the process tears itself down.

llvm-svn: 178191
2013-03-27 23:08:40 +00:00
Jack Carter ccc266559f Updated ELF relocation test for .eh_frame section
Made sure we were looking a correct section
Added Mips32/64 as an extra check
Updated llvm-objdump to generate symbolic info for Mips relocations

llvm-svn: 178190
2013-03-27 22:58:49 +00:00
Enrico Granata 360cc3188d Implementing the notion of externally-acquirable ScriptInterpreter lock
With this notion, if parties outside the ScriptInterpreter itself need to acquire a lock on script APIs, they can do so by a pattern like this:

{
auto lock = interpeter->AcquireInterpreterLock();
// do whatever you need to do...
} // lock will automatically be released here

This might be useful for classes that use the Python convenience objects (e.g. PythonDictionary) to ensure they keep the underlying interpreter in a safe and controlled condition while they call through the C API functions
Of course, the ScriptInterpreter still manages its internal locking correctly when necessary :-)

llvm-svn: 178189
2013-03-27 22:38:11 +00:00
Chad Rosier 459d3ee1dd Remove unnecessary attributes from test case.
llvm-svn: 178188
2013-03-27 21:54:09 +00:00
Chad Rosier a0ef404973 Add a front-end test case for r178186.
llvm-svn: 178187
2013-03-27 21:50:39 +00:00
Chad Rosier 1530ba5e73 [ms-inline asm] Add support of imm displacement before bracketed memory
expression.  Specifically, this syntax:

 ImmDisp [ BaseReg + Scale*IndexReg + Disp ] 

We don't currently support:

 ImmDisp [ Symbol ]

rdar://13518671

llvm-svn: 178186
2013-03-27 21:49:56 +00:00
Fariborz Jahanian 7e1eae004c Fixes a typo in my last patch.
llvm-svn: 178184
2013-03-27 21:33:52 +00:00
John Thompson ea6c8dbf71 Broke out header file list reading into separate function. Moved options to front. Removed some trailing spaces.
llvm-svn: 178182
2013-03-27 21:23:21 +00:00
Argyrios Kyrtzidis 95aa0b77f2 Revert "[lib/Headers] Define NULL as __DARWIN_NULL when on __APPLE__."
Per feedback by Doug, we should avoid platform-specific implementations
in lib/Headers as much as possible.

This reverts commit r178110.

llvm-svn: 178181
2013-03-27 21:22:45 +00:00
Hal Finkel 37714b8a48 Resynchronize isLoadFromStackSlot with LoadRegFromStackSlot (and stores) in PPCInstrInfo
These functions should have the same list of load/store instructions. Now that
all load/store forms have been normalized (to single instructions or pseudos)
they can be resynchronized.

Found by inspection, although hopefully this will improve optimization.  I've
also added some comments.

llvm-svn: 178180
2013-03-27 21:21:15 +00:00
Fariborz Jahanian 84510744d9 Objective-C: Issue more precise warning when user
is accessing 'isa' as an object pointer.
// rdar://13503456. FixIt to follow in another patch.

llvm-svn: 178179
2013-03-27 21:19:25 +00:00
Ashok Thirumurthi 762fbd0f95 test commit
- modified a comment

llvm-svn: 178178
2013-03-27 21:09:30 +00:00
Greg Clayton a6b0774d32 <rdar://problem/13327940>
Cleaned up some paths.

llvm-svn: 178177
2013-03-27 20:53:12 +00:00
Greg Clayton ff267c7fa0 Added a source file needed for clang to compile in the lldb_perf_clang test.
llvm-svn: 178176
2013-03-27 20:13:09 +00:00
Greg Clayton f81f751722 <rdar://problem/13327940>
Enhance automated testing to include evaluating function calls.

llvm-svn: 178175
2013-03-27 20:12:14 +00:00
Jack Carter d224bc4f25 test file name change to correct typo
llvm-svn: 178174
2013-03-27 20:07:48 +00:00
Rafael Espindola fe3107892b Cleanup clang's specializations of simplify_type.
Now that the basic implementation in llvm has been fixed, simplify the
specializations in clang.

llvm-svn: 178173
2013-03-27 19:38:14 +00:00
John Thompson fd8ca38ad5 Added informational comment about using -x c++.
llvm-svn: 178172
2013-03-27 19:31:22 +00:00
Preston Gurd 663e6f9558 For the current Atom processor, the fastest way to handle a call
indirect through a memory address is to load the memory address into
a register and then call indirect through the register.

This patch implements this improvement by modifying SelectionDAG to
force a function address which is a memory reference to be loaded
into a virtual register.

Patch by Sriram Murali.

llvm-svn: 178171
2013-03-27 19:14:02 +00:00
Hal Finkel 1996f3d87f Fix typo (common to both X86 and PPC)
Thanks to Bill Schmidt for pointing this out during code review!

llvm-svn: 178170
2013-03-27 19:10:42 +00:00
Hal Finkel 5791f51449 Remove more dead LR-as-GPR PPC code
I had removed similar code a few days ago, but somehow missed this.

llvm-svn: 178169
2013-03-27 19:10:40 +00:00
Ariel J. Bernal 3f08aae84f cpp11-migrate segfaults transforming map<string,int>::iterator
cpp11-migrate segfaults when -use-auto tries to resolve initializing 
expression resulting in an expression with cleanups.

- Skip expressions with cleanups from the initializer
- Added test case

Fixes PR15550

llvm-svn: 178167
2013-03-27 18:49:31 +00:00
Dan Gohman 38a723830c Avoid undefined behavior from passing a std::vector's own contents
in as an argument to push_back.

llvm-svn: 178166
2013-03-27 18:44:56 +00:00
Hal Finkel f1af79ab45 Remove "gpr0 allocation" from the PPC README TODO list
As Chris pointed out, post r178123, this is now done!

llvm-svn: 178165
2013-03-27 18:39:52 +00:00