Jim Grosbach
25749ad5c2
add cmd line option to leave dbgvalues in during post-RA sceduling. Useful
...
while debugging what's mishandled about them in the post-RA pass.
llvm-svn: 103805
2010-05-14 21:18:04 +00:00
Bill Wendling
7bf4bae5dc
Fix comment.
...
llvm-svn: 103804
2010-05-14 21:17:29 +00:00
Douglas Gregor
fa8b4955bb
When a failed dynamic_cast<T&> (which is an lvalue) results in a
...
throw, it should use invoke when needed. The fixes the
Boost.Statechrt failures that motivated PR7132, but there are a few
side issues to tackle as well.
llvm-svn: 103803
2010-05-14 21:14:41 +00:00
Bill Wendling
95f6ebcb37
Rename "HasCalls" in MachineFrameInfo to "AdjustsStack" to better describe what
...
the variable actually tracks.
N.B., several back-ends are using "HasCalls" as being synonymous for something
that adjusts the stack. This isn't 100% correct and should be looked into.
llvm-svn: 103802
2010-05-14 21:14:32 +00:00
Devang Patel
c87e867111
Test case for r103800.
...
llvm-svn: 103801
2010-05-14 21:04:45 +00:00
Dan Gohman
35dd005d22
Lowering of atomic instructions can result in operands being
...
used more than once. If ISel had put a kill flag on one of them,
it's not valid to transfer the kill flag to each new instance.
llvm-svn: 103799
2010-05-14 21:01:44 +00:00
Devang Patel
e0a94bfe9f
Add support to preserve type info for the variables that are removed by the optimizer.
...
llvm-svn: 103798
2010-05-14 21:01:35 +00:00
Jakob Stoklund Olesen
670492c8ee
When verifying two-address instructions, check the following:
...
- Kill is implicit when use and def registers are identical.
- Only virtual registers can differ.
Add a -verify-fast-regalloc to run the verifier before the fast allocator.
llvm-svn: 103797
2010-05-14 20:28:32 +00:00
Nick Kledzik
38d72d5a66
fix strip options and properly copy include/ext
...
llvm-svn: 103796
2010-05-14 20:22:09 +00:00
Nick Kledzik
111e0cbe51
add headers and implementation for <new>, <exception>, and <typeinfo>
...
llvm-svn: 103795
2010-05-14 20:19:37 +00:00
Nick Kledzik
749c758632
change test case to verify unexpected() calls terminate - not is terminate
...
llvm-svn: 103794
2010-05-14 20:17:42 +00:00
Anders Carlsson
a1bc38d53e
Remove an unused function.
...
llvm-svn: 103793
2010-05-14 19:48:27 +00:00
Anders Carlsson
1cf9274a5a
Move ContainsPointerToDataMember to CodeGenTypes. No functionality change.
...
llvm-svn: 103792
2010-05-14 19:41:56 +00:00
Kevin Enderby
7bc111f5a9
Fix so "int3" is correctly accepted, added "into" and fixed "int" with an
...
argument, like "int $4", to not get an Assertion error.
llvm-svn: 103791
2010-05-14 19:16:02 +00:00
Evan Cheng
cfa7d02d6e
Model VLD*_UPD and VLD*odd_UPD pair with REG_SEQUENCE.
...
llvm-svn: 103790
2010-05-14 18:54:59 +00:00
Daniel Dunbar
2493ddfe42
MC/Mach-O/x86_64: Darwin's special "signed_N" relocation types should only be
...
used to replace a normal relocation, not a reference to a GOT entry.
llvm-svn: 103789
2010-05-14 18:53:40 +00:00
Howard Hinnant
7070922ff8
[rand.dist.pois.gamma]
...
llvm-svn: 103788
2010-05-14 18:43:10 +00:00
Fariborz Jahanian
bdb1b0d6cb
Implement new default property synthesis rules. Essentially, no longer
...
user directive is needed to force a property implementation.
It is decided based on those propeties which are declared in
the class (or in its protocols) but not those which must be
default implemented by one of its super classes. Implements radar 7923851.
llvm-svn: 103787
2010-05-14 18:35:57 +00:00
Ted Kremenek
e6e847079c
Add documention on ns_returns_not_retained and cf_returns_not_retained attributes.
...
llvm-svn: 103785
2010-05-14 18:13:43 +00:00
Jakob Stoklund Olesen
4d5c1061e3
Simplify the handling of physreg defs and uses in RegAllocFast.
...
This adds extra security against using clobbered physregs, and it adds kill
markers to physreg uses.
llvm-svn: 103784
2010-05-14 18:03:25 +00:00
Chris Lattner
ff895c140c
Improve error recovery in C/ObjC when the first argument of a function
...
declarator is incorrect. Not being a typename causes the parser to
dive down into the K&R identifier list handling stuff, which is almost
never the right thing to do.
Before:
r.c:3:17: error: expected ')'
void bar(intptr y);
^
r.c:3:9: note: to match this '('
void bar(intptr y);
^
r.c:3:10: error: a parameter list without types is only allowed in a function definition
void bar(intptr y);
^
After:
r.c:3:10: error: unknown type name 'intptr'; did you mean 'intptr_t'?
void bar(intptr y);
^~~~~~
intptr_t
r.c:1:13: note: 'intptr_t' declared here
typedef int intptr_t;
^
This fixes rdar://7980651 - poor recovery for bad type in the first arg of a C function
llvm-svn: 103783
2010-05-14 17:44:56 +00:00
Chris Lattner
d3e4ba18ac
fit in 80 cols, remove prototypes for handling #assert since apparently noone cares.
...
llvm-svn: 103782
2010-05-14 17:35:07 +00:00
Chris Lattner
9453ab8c9c
Refactor ParseFunctionDeclaratorIdentifierList to have the first
...
identifier in the identifier list consumed before it is called.
No functionality change.
llvm-svn: 103781
2010-05-14 17:23:36 +00:00
Abramo Bagnara
f819945365
Added Expr::EvaluateAsAnyLValue.
...
llvm-svn: 103780
2010-05-14 17:07:14 +00:00
Devang Patel
ec2a9abd4a
Fix thinko in yesterday's fix.
...
Providing linkage name for function static variable confuses gdb, so don't do that.
llvm-svn: 103779
2010-05-14 16:55:25 +00:00
Dan Gohman
30e3db2ba3
Set isTerminator on TRAP instructions.
...
llvm-svn: 103778
2010-05-14 16:46:02 +00:00
Dan Gohman
c56ca22616
Don't use isBarrier for the PowerPC sync instruction. isBarrier is for
...
control barriers, not memory ordering barriers.
llvm-svn: 103777
2010-05-14 16:42:16 +00:00
Dan Gohman
02d9947e60
Add mayLoad and mayStore flags to instructions which missed them.
...
llvm-svn: 103776
2010-05-14 16:34:55 +00:00
Daniel Dunbar
4707cef758
Revert r103770, "Added basic source locations to Elaborated and DependentName
...
types.", it is breaking Clang bootstrap.
llvm-svn: 103775
2010-05-14 16:34:09 +00:00
Dan Gohman
8d1bc79327
Use regular PassManager instead of FunctionPassManager in opt, since it
...
isn't doing lazy streaming. This also fixes a missing doFinalization call.
llvm-svn: 103774
2010-05-14 15:36:54 +00:00
Dan Gohman
1603b2e457
Use PassManagerBase, to give clients the option of using either
...
FunctionPassManager or regular PassManager.
llvm-svn: 103773
2010-05-14 15:35:10 +00:00
Dan Gohman
49a994db57
Add an isNodeHidden to the graph traits, to support definition of
...
subgraph views.
llvm-svn: 103772
2010-05-14 15:29:31 +00:00
Anders Carlsson
65c6d541dd
Make sure that value-initialized pointers to data members are initialized correctly.
...
llvm-svn: 103771
2010-05-14 15:05:19 +00:00
Abramo Bagnara
e9f4d6ed7d
Added basic source locations to Elaborated and DependentName types.
...
llvm-svn: 103770
2010-05-14 14:14:23 +00:00
Daniel Dunbar
148e876ac2
XFAIL the test I added with vg_leak, apparently it is the first and only llc
...
-filetype=obj test, and -filetype=obj leaks a few objects. Added a FIXME, we
need to sort out the ownership model for the various MC objects.
llvm-svn: 103769
2010-05-14 07:47:51 +00:00
Evan Cheng
3e51388e6a
Get rid of the bit twiddling to read / set OpActions and ValueTypeActions. The small saving in memory isn't worth the increase in runtime and code complexity in my opinion.
...
llvm-svn: 103768
2010-05-14 07:37:40 +00:00
Douglas Gregor
05cfc295f4
Namespaces can only be defined at global or namespace scope. Fixes PR6596.
...
llvm-svn: 103767
2010-05-14 05:08:22 +00:00
Douglas Gregor
f3d3ae665c
Make sure to search semantic scopes and appropriate template-parameter
...
scopes during unqualified name lookup that has fallen out to namespace
scope. Fixes PR7133.
llvm-svn: 103766
2010-05-14 04:53:42 +00:00
Daniel Dunbar
3439ed6324
Inline Asm: Ensure buffer is newline terminated to match how the text is printed.
...
- This is a hack, but I can't decide the best place to handle this. Chris?
llvm-svn: 103765
2010-05-14 04:31:50 +00:00
Jakob Stoklund Olesen
ceb5a7ada2
Enable opportunistic coalescing
...
llvm-svn: 103764
2010-05-14 04:30:51 +00:00
Douglas Gregor
83de20f5e3
A vtable is used if the key function is defined... even if that key
...
function's definition is an out-of-class definition marked
"inline". Fixes an assertion in WebKit.
llvm-svn: 103763
2010-05-14 04:08:48 +00:00
Daniel Dunbar
64585cdb66
XFAIL a test on Win32.
...
llvm-svn: 103762
2010-05-14 03:54:53 +00:00
Daniel Dunbar
6b45b67b26
C++/Darwin/x86: Teach IRgen it can pass reference types in registers.
...
llvm-svn: 103761
2010-05-14 03:40:53 +00:00
Evan Cheng
cd67c21407
Added a QQQQ register file to model 4-consecutive Q registers.
...
llvm-svn: 103760
2010-05-14 02:13:41 +00:00
Daniel Dunbar
f9ff35010c
Driver: Enable -integrated-as by default, at least for Darwin/x86 without -static.
...
- How else will we figure out what is broken, eh?
llvm-svn: 103759
2010-05-14 02:03:00 +00:00
Daniel Dunbar
8363697282
Force -no-integrated-as in this test.
...
llvm-svn: 103758
2010-05-14 02:02:13 +00:00
Eric Christopher
9fb6bb07ca
Add AsmParser support for darwin tbss directive.
...
Nothing uses this yet.
llvm-svn: 103757
2010-05-14 01:50:28 +00:00
Eric Christopher
bc81885ff7
Fix a couple of typos.
...
llvm-svn: 103756
2010-05-14 01:38:54 +00:00
Nick Lewycky
fbc1a76546
Fix typo.
...
llvm-svn: 103755
2010-05-14 01:02:48 +00:00
Daniel Dunbar
4bce748aa2
MC: Switch to completely lazy layout.
...
- The eliminates the last major algorithmic problem with MC.
llvm-svn: 103754
2010-05-14 00:51:14 +00:00