Venkatraman Govindaraju
ee347f8091
Remove SPARC backend getpcx instruction's Uses. Also, insert an assert to
...
ensure %o7 is not assigned as the destination of getpcx instruction.
llvm-svn: 123304
2011-01-12 03:52:59 +00:00
John McCall
20f6ab828a
Fix a latent bug where, after emitting an expression statement, we would
...
delete the block we began emitting into if it had no predecessors. We never
want to do this, because there are several valid cases during statement
emission where an existing block has no known predecessors but will acquire
some later. The case in my test case doesn't inherently fall into this
category, because we could safely emit the case-range code before the statement
body, but there are examples with labels that can't be fallen into
that would also demonstrate this bug.
rdar://problem/8837067
llvm-svn: 123303
2011-01-12 03:41:02 +00:00
Chris Lattner
dd5f60b7a7
revert 123144, reenabling the rest of memset formation.
...
llvm-svn: 123302
2011-01-12 03:25:15 +00:00
Venkatraman Govindaraju
3b71b0ae3d
Fix SPARC backend call instruction so that arguments passed through registers
...
are correctly marked as used instead of passing all possible argument registers
as used.
llvm-svn: 123301
2011-01-12 03:18:21 +00:00
Greg Clayton
722a0cdc95
Added the following functions to SBThread to allow threads to be suspended when a process is resumed:
...
bool SBThread::Suspend();
bool SBThread::Resume();
bool SBThread::IsSuspended();
llvm-svn: 123300
2011-01-12 02:25:42 +00:00
Chris Lattner
654098f411
revert r123146 which disabled code that wasn't the root cause
...
of the bootstrap miscompare issue.
llvm-svn: 123299
2011-01-12 01:52:23 +00:00
Chris Lattner
fa7c29d255
revert r123149, reenabling an improvement to memcpyopt that wasn't
...
the source of the bootstrap problem.
llvm-svn: 123298
2011-01-12 01:43:46 +00:00
Matt Beaumont-Gay
ea43172297
Prefer llvm_unreachable to assert(0)
...
llvm-svn: 123297
2011-01-12 01:42:42 +00:00
Daniel Dunbar
e26e500b79
Driver: Change -dumpversion to return a GCC compatible answer.
...
- See comment for why.
llvm-svn: 123296
2011-01-12 00:43:47 +00:00
John McCall
553d45aaf3
Slight bugfix to the attribute-distribution logic for GC attributes.
...
Slight optimization of getObjCGCAttrKind.
llvm-svn: 123295
2011-01-12 00:34:59 +00:00
Jason W Kim
9c5b65d289
1. Support ELF pcrel relocations for movw/movt:
...
R_ARM_MOVT_PREL and R_ARM_MOVW_PREL_NC.
2. Fix minor bug in ARMAsmPrinter - treat bitfield flag as a bitfield, not an enum.
3. Add support for 3 new elf section types (no-ops)
llvm-svn: 123294
2011-01-12 00:19:25 +00:00
Rafael Espindola
25f4620c67
Set unnamed_addr in every type info.
...
llvm-svn: 123293
2011-01-11 23:55:05 +00:00
Jason W Kim
1f7bc0707d
Workaround for bug 8721.
...
.s Test added.
llvm-svn: 123292
2011-01-11 23:53:41 +00:00
Francois Pichet
c3e73b343c
Add a comment for r123231.
...
llvm-svn: 123291
2011-01-11 23:38:13 +00:00
Jakob Stoklund Olesen
43812bfa92
The world is not ready for LiveDebugVariables yet.
...
llvm-svn: 123290
2011-01-11 23:20:33 +00:00
Douglas Gregor
74c6d19c1f
Add TemplateArgument::CreatePackCopy() to create a new parameter pack
...
in ASTContext-allocated memory, copying the provided template
arguments. Use this new routine where we can. No functionality change.
llvm-svn: 123289
2011-01-11 23:09:57 +00:00
Jakob Stoklund Olesen
12cc296bd4
Remove the PR8954 workaround.
...
llvm-svn: 123288
2011-01-11 22:56:41 +00:00
Jakob Stoklund Olesen
f2407aa98b
Fix a non-deterministic loop in llvm::MergeBlockIntoPredecessor.
...
DT->changeImmediateDominator() trivially ignores identity updates, so there is
really no need for the uniqueing provided by SmallPtrSet.
I expect this to fix PR8954.
llvm-svn: 123286
2011-01-11 22:54:38 +00:00
Jakob Stoklund Olesen
8c98495f43
Enable LiveDebugVariables by default.
...
llvm-svn: 123282
2011-01-11 22:45:28 +00:00
Venkatraman Govindaraju
4d6ade0e31
SPARC backend: correct ICC/FCC uses for ADDX and SELECT_CC
...
llvm-svn: 123281
2011-01-11 22:38:28 +00:00
Rafael Espindola
bb7f7686c5
Set unnamed_addr in VTTs.
...
llvm-svn: 123280
2011-01-11 22:29:55 +00:00
Douglas Gregor
2fcb863b2b
Implement partial ordering of class template partial specializations
...
and function templates that contain variadic templates. This involves
three small-ish changes:
(1) When transforming a pack expansion, if the transformed argument
still contains unexpanded parameter packs, build a pack
expansion. This can happen during the substitution that occurs into
class template partial specialiation template arguments during
partial ordering.
(2) When performing template argument deduction where the argument
is a pack expansion, match against the pattern of that pack
expansion.
(3) When performing template argument deduction against a non-pack
parameter, or a non-expansion template argument, deduction fails if
the argument itself is a pack expansion (C++0x
[temp.deduct.type]p22).
llvm-svn: 123279
2011-01-11 22:21:24 +00:00
Cameron Zwarich
cb9c4f85ec
Dial back the speculative fix for PR8954 a bit, so that we only recompute dominators
...
once at the beginning of GVN instead of once per iteration.
llvm-svn: 123278
2011-01-11 22:14:42 +00:00
Jakob Stoklund Olesen
803f48bcd1
Don't insert DBG_VALUE instructions after the first terminator.
...
For one, MachineBasicBlock::getFirstTerminator() doesn't understand what is
happening, and it also makes sense to have all control flow run through the
DBG_VALUE.
llvm-svn: 123277
2011-01-11 22:11:16 +00:00
Evan Cheng
e45d685895
Clean up ARM subtarget code by using Triple ADT.
...
llvm-svn: 123276
2011-01-11 21:46:47 +00:00
Rafael Espindola
b1e879c80f
Set unnamed_addr for type infos that we are confortable marking as hidden. I
...
think it is safe to mark all type infos with unnamed_addr, but I am not sure.
llvm-svn: 123275
2011-01-11 21:44:37 +00:00
Devang Patel
447cb38fbe
Appropriately truncate debug info range in dwarf output.
...
This is not yet completely enabled.
llvm-svn: 123274
2011-01-11 21:42:10 +00:00
Jakob Stoklund Olesen
819eb4ed0b
Put the Dominator improvements back in. They were not the cause of bootstrap miscomparisons.
...
llvm-svn: 123273
2011-01-11 21:23:09 +00:00
Rafael Espindola
5674c644cf
Add unnamed_addr to vtables.
...
llvm-svn: 123272
2011-01-11 21:10:26 +00:00
Eric Christopher
50c59e9e9a
Add back 122079 so we can ignore the argument some more.
...
llvm-svn: 123271
2011-01-11 20:37:13 +00:00
Cameron Zwarich
51eb403907
Attempt to fix the bootstrap buildbot. Rafael says this works for him on x86-64 Linux.
...
llvm-svn: 123270
2011-01-11 20:23:34 +00:00
Howard Hinnant
119cd0ba12
fix guard
...
llvm-svn: 123269
2011-01-11 20:02:45 +00:00
Argyrios Kyrtzidis
4b7433fab2
[analyzer] Introduce ObjCSelfInitChecker, which checks initialization methods to verify that they assign 'self' to the
...
result of an initialization call (e.g. [super init], or [self initWith..]) before using any instance variable or
returning 'self'.
llvm-svn: 123264
2011-01-11 19:45:25 +00:00
Argyrios Kyrtzidis
9c23e6c689
[analyzer] Support post-visiting ObjCIvarRefExprs for checkers.
...
llvm-svn: 123263
2011-01-11 19:45:20 +00:00
Argyrios Kyrtzidis
52f04650ae
[analyzer] Add 'bool ignorePrefix' parameter to cocoa::deriveNamingConvention to control whether
...
the prefix should be ignored.
E.g. if ignorePrefix is true, "_init" and "init" selectors will both be result in InitRule, but if
ignorePrefix is false, only "init" will return InitRule.
llvm-svn: 123262
2011-01-11 19:45:16 +00:00
Argyrios Kyrtzidis
1790c975e7
[analyzer] Add 'isLoad' parameter in Checker::visitLocation() to conveniently distinguish between loads/stores.
...
llvm-svn: 123261
2011-01-11 19:45:13 +00:00
Jakob Stoklund Olesen
32bd3a1e9a
Speculatively revert the recent improvements to Dominators.h in an attempt to track down the gcc bootstrap miscompare.
...
llvm-svn: 123254
2011-01-11 19:26:30 +00:00
Daniel Dunbar
09264124c1
McARM: Fill in GetMnemonicAcceptInfo().
...
llvm-svn: 123253
2011-01-11 19:06:29 +00:00
Daniel Dunbar
6492807291
McARM: Write a silly Python script to compute some hard coded info from the
...
generated ARM match table, which is substantially more efficient than dealing
with tblgen.
llvm-svn: 123252
2011-01-11 19:06:26 +00:00
Owen Anderson
0022a4b417
Remove dead variable, const-ref-ize an APInt.
...
llvm-svn: 123248
2011-01-11 18:26:37 +00:00
Chris Lattner
d41db8f9cb
this pass claims to preserve scev, make sure to tell it about deletions.
...
llvm-svn: 123247
2011-01-11 18:14:50 +00:00
Bob Wilson
e5863d6639
Fix a comment: We now have intrinsics for vcvtr.
...
llvm-svn: 123246
2011-01-11 17:56:41 +00:00
Douglas Gregor
552c7cf22c
Add another test for [temp.func.order]p5/[temp.deduct.partial]p11,
...
from James Widman.
llvm-svn: 123245
2011-01-11 17:51:55 +00:00
Douglas Gregor
b837ea4eee
Implement C++ [temp.func.order]p5 more directly, by passing down the
...
number of explicit call arguments. This actually fixes an erroneous
test for [temp.deduct.partial]p11, where we were considering
parameters corresponding to arguments beyond those that were
explicitly provided.
llvm-svn: 123244
2011-01-11 17:34:58 +00:00
Chris Lattner
d30de95520
some comment improvements.
...
llvm-svn: 123243
2011-01-11 17:11:59 +00:00
Chris Lattner
abd2dfd3dc
Fix PR8946, a missing reg/reg form of movdqu.
...
llvm-svn: 123242
2011-01-11 17:04:55 +00:00
Bob Wilson
b9fa00e0c2
Remove special handling for opaque Neon vector types.
...
Clang does not wrap the vectors in structs anymore so this isn't needed.
llvm-svn: 123241
2011-01-11 16:53:49 +00:00
Ted Kremenek
841df11dab
Remove ProgramPoint parameter from GenericNodeBuilder::generateNode().
...
llvm-svn: 123240
2011-01-11 16:53:44 +00:00
Daniel Dunbar
5a384c86b2
McARM: Sketch some logic for determining when to add carry set and predication code operands based on the "canonical mnemonic".
...
llvm-svn: 123239
2011-01-11 15:59:53 +00:00
Daniel Dunbar
9d944b3fcc
McARM: Add more hard coded logic to SplitMnemonicAndCC to also split out the
...
carry setting flag from the mnemonic.
Note that this currently involves me disabling a number of working cases in
arm_instructions.s, this is a hopefully short term evil which will be rapidly
fixed (and greatly surpassed), assuming my current approach flies.
llvm-svn: 123238
2011-01-11 15:59:50 +00:00