John McCall
4e81961a1e
Fix the computation of alignment for fields of packed+aligned structs.
...
Part of the fix for PR8413.
llvm-svn: 123904
2011-01-20 07:57:12 +00:00
Greg Clayton
4dc72284b2
Fixed the async packets (packets that need to be sent to the GDB server
...
while the inferior is running) to be fast. The previous code would always
cause the sender to timeout, yet still return success due to the way we
were waiting for a value (incorrect value) to change. Now the ProcessGDBRemote
plug-in has a public and private "is running" predicate. This allows things
that need to send async packets to interrupt and wait for the private "is running"
state to be flipped to false, and then resume quickly with no timeout.
llvm-svn: 123903
2011-01-20 07:53:45 +00:00
Michael J. Spencer
c6bc900893
llvm-objdump: Remove redundant includes.
...
llvm-svn: 123902
2011-01-20 07:22:13 +00:00
Michael J. Spencer
05350e6d7c
llvm-nm: Fix warning.
...
llvm-svn: 123901
2011-01-20 07:22:04 +00:00
Anders Carlsson
7c812f5a99
When instantiating member functions, propagate whether the member function is marked 'final' and 'override'.
...
Also, call CheckOverrideControl when instantiating member functions.
llvm-svn: 123900
2011-01-20 06:52:44 +00:00
Michael J. Spencer
2d67ed8f3b
Object: Add some tests!
...
llvm-svn: 123899
2011-01-20 06:39:15 +00:00
Michael J. Spencer
2670c2528c
Add llvm-objdump
...
llvm-svn: 123898
2011-01-20 06:39:06 +00:00
Michael J. Spencer
b8672a50c0
llvm-nm: Update to use the new LLVMObject library.
...
llvm-svn: 123897
2011-01-20 06:38:57 +00:00
Michael J. Spencer
b60a18dea8
Object: Add ELF support.
...
llvm-svn: 123896
2011-01-20 06:38:47 +00:00
Michael J. Spencer
8e90adaf24
Object: Add COFF Support.
...
llvm-svn: 123895
2011-01-20 06:38:34 +00:00
Anders Carlsson
fa8e5d3d67
When checking for functions marked override, ignore dependent contexts.
...
llvm-svn: 123894
2011-01-20 06:33:26 +00:00
Anders Carlsson
c87f861d0a
Make CheckOverrideControl a member of Sema.
...
llvm-svn: 123893
2011-01-20 06:29:02 +00:00
Andrew Trick
2cd1f0beb6
Selection DAG scheduler register pressure heuristic fixes.
...
Added a check for already live regs before claiming HighRegPressure.
Fixed a few cases of checking the wrong number of successors.
Added some tracing until these heuristics are better understood.
llvm-svn: 123892
2011-01-20 06:21:59 +00:00
Jakob Stoklund Olesen
4060abb4b9
Check that a live range exists before shortening it. This fixes PR8989.
...
The live range may have been deleted earlier because of rematerialization.
llvm-svn: 123891
2011-01-20 06:20:02 +00:00
Jakob Stoklund Olesen
145755f1d6
Add hidden -verify-coalescing to run the machine code verifier before and after
...
register coalescing.
llvm-svn: 123890
2011-01-20 06:20:00 +00:00
Greg Clayton
16b2d2bf19
Made the DWARF + debug map symbol file parser be much more efficient when it isn't
...
going to actually be used as the symbol file plug-in by looking only for suitable
N_OSO symbols and avoiding sorting function (N_FUN) and global/static (N_GSYM/N_STSYM)
symbols when there are no suitable N_OSO objects.
llvm-svn: 123889
2011-01-20 06:08:59 +00:00
Anders Carlsson
fd83553733
Diagnose virtual member functions marked override but not overriding any virtual member functions.
...
llvm-svn: 123888
2011-01-20 05:57:14 +00:00
Anders Carlsson
b4801436d1
Fix tests to be valid.
...
llvm-svn: 123887
2011-01-20 05:55:43 +00:00
Michael J. Spencer
06f5223621
gold: MinGW fix.
...
llvm-svn: 123886
2011-01-20 05:43:16 +00:00
Anders Carlsson
dff1434d1e
Add IsMarkedOverride and IsMarkedFinal flags to FunctionDecl (to be used by CXXRecordDecl).
...
llvm-svn: 123885
2011-01-20 05:36:44 +00:00
Venkatraman Govindaraju
058e12476c
Sparc backend: Implements a delay slot filler that attempt to fill delay slots
...
with useful instructions.
llvm-svn: 123884
2011-01-20 05:08:26 +00:00
Anders Carlsson
725987b034
Change the parser error to reflect that virt-specifiers are allowed on any class member.
...
llvm-svn: 123883
2011-01-20 04:38:09 +00:00
Anders Carlsson
13a69102d7
Only allow virtual member functions to be marked 'override' and 'final'.
...
llvm-svn: 123882
2011-01-20 04:34:22 +00:00
Greg Clayton
c432c1967b
Fixed the auto completion of objective C types with the new ExternalASTSource
...
changes that recently happened.
llvm-svn: 123881
2011-01-20 04:18:48 +00:00
Anders Carlsson
511315cc55
Add silly test case.
...
llvm-svn: 123880
2011-01-20 04:07:46 +00:00
Cameron Zwarich
050eec1d1d
Update a comment.
...
llvm-svn: 123879
2011-01-20 03:58:43 +00:00
Anders Carlsson
db36b8055e
Pass the VirtSpecifiers along to Sema::ActOnCXXMemberDeclarator.
...
llvm-svn: 123878
2011-01-20 03:57:25 +00:00
Cameron Zwarich
a9797804da
Remove an unnecessary #include.
...
llvm-svn: 123877
2011-01-20 03:56:35 +00:00
Anders Carlsson
428803b58a
Lazily initialize the 'final' and 'override' contextual keywords as suggested by Doug.
...
llvm-svn: 123876
2011-01-20 03:47:08 +00:00
Anders Carlsson
d802266c6b
Add more parser tests for the override control keywords.
...
llvm-svn: 123875
2011-01-20 03:41:12 +00:00
Rafael Espindola
4b6053a1fe
Turns out that the previous commit also fixes this :-)
...
llvm-svn: 123873
2011-01-20 02:57:51 +00:00
Jakob Stoklund Olesen
5acd4a6453
Fix bug found by new clang warning.
...
llvm-svn: 123872
2011-01-20 02:43:19 +00:00
Rafael Espindola
9e976dcce8
Fix PR8884 by skipping transparent contexts. The test is for LikageSpec. I
...
failed to find a case where an enum context would make a difference, but
found PR9007 on the way.
llvm-svn: 123871
2011-01-20 02:26:24 +00:00
Jim Ingham
77787033b9
Back up both the register AND the stop state when calling functions.
...
Set the thread state to "bland" before calling functions so they don't
inherit the pending signals and die.
llvm-svn: 123869
2011-01-20 02:03:18 +00:00
Ken Dyck
7d381c48fe
Add CharUnits::RoundUpToAlignment() to simplify rounding in character units.
...
llvm-svn: 123868
2011-01-20 01:59:55 +00:00
Douglas Gregor
2bbfba0f0c
When building a user-defined conversion sequence, keep track of the
...
declaration that name lookup actually found, so that we can use it for
access checking later on. Fixes <rdar://problem/8876150>.
llvm-svn: 123867
2011-01-20 01:32:05 +00:00
Eric Christopher
b2139f655b
Use only one API at a time.
...
llvm-svn: 123866
2011-01-20 01:29:23 +00:00
Eric Christopher
bb14f65672
If we can, lower the multiply part of a umulo/smulo call to a libcall
...
with an invalid type then split the result and perform the overflow check
normally.
Fixes the 32-bit parts of rdar://8622122 and rdar://8774702.
llvm-svn: 123864
2011-01-20 00:29:24 +00:00
Douglas Gregor
668443efb1
Sema::BuildCXXMemberCallExpr() can fail due to access or ambiguities,
...
so allow it to propagate the failure outward. Fixes the crashing part
of <rdar://problem/8876150>.
llvm-svn: 123863
2011-01-20 00:18:04 +00:00
Devang Patel
2d9e532a3a
Fix debug info for merged global.
...
llvm-svn: 123862
2011-01-20 00:02:16 +00:00
Douglas Gregor
6edd977c6f
Explicitly track the number of call arguments provided when performing
...
overload resolution, so that we only use that number of call arguments
for partial ordering. Fixes PR9006, a recent regression.
llvm-svn: 123861
2011-01-19 23:54:39 +00:00
Douglas Gregor
312ab72dbd
Eradicate any mention of C++0x concepts.
...
llvm-svn: 123860
2011-01-19 23:15:20 +00:00
Jakob Stoklund Olesen
79be8aecba
Divert Hopfield network debug output. It is very noisy.
...
llvm-svn: 123859
2011-01-19 23:14:59 +00:00
Jakob Stoklund Olesen
509089f5b6
Don't accidentally leave small gaps in the live ranges when leaving the active
...
interval after an instruction. The leaveIntvAfter() method only adds liveness
from the instruction's boundary index to the inserted copy.
Ideally, SplitKit should be smarter about this, perhaps by combining useIntv()
and leaveIntvAfter() into one method that guarantees continuity.
llvm-svn: 123858
2011-01-19 23:14:56 +00:00
Jim Grosbach
493c0fbde8
Make sure to propogate the error code when we fail to parse a modifier.
...
llvm-svn: 123857
2011-01-19 23:06:07 +00:00
Devang Patel
8698f09dbd
Fix register address expression. Patch by Ken Dyck.
...
llvm-svn: 123856
2011-01-19 23:04:47 +00:00
Greg Clayton
22a939a782
Make expressions clean up their JIT'ed code allocation.
...
llvm-svn: 123855
2011-01-19 23:00:49 +00:00
Douglas Gregor
eecc6bc388
Variadic templates are fully implemented.
...
Turn on the __has_feature switch for variadic templates, document
their completion, and put the ExtWarn into the c++0x-extensions
warning group.
llvm-svn: 123854
2011-01-19 22:11:50 +00:00
Jakob Stoklund Olesen
9fb04015ff
Implement RAGreedy::splitAroundRegion and remove loop splitting.
...
Region splitting includes loop splitting as a subset, and it is more generic.
The splitting heuristics for variables that are live in more than one block are
now:
1. Try to create a region that covers multiple basic blocks.
2. Try to create a new live range for each block with multiple uses.
3. Spill.
Steps 2 and 3 are similar to what the standard spiller is doing.
llvm-svn: 123853
2011-01-19 22:11:48 +00:00
Douglas Gregor
b25d8c3af4
Downgrade the "variadic templates are a C++0x feature" error to an
...
ExtWarn. We want variadic templates to be usable in libc++/libstdc++
headers even when we're in C++98/03 mode, since it's the only clean
way to implement TR1 <functional>.
llvm-svn: 123852
2011-01-19 21:59:15 +00:00