Chris Lattner
83eb9b0b01
strength reduce anonymous namespace to static.
...
llvm-svn: 78417
2009-08-07 22:27:19 +00:00
Chris Lattner
5333a7b8c5
tidy up
...
llvm-svn: 78416
2009-08-07 22:26:50 +00:00
Anders Carlsson
f10e414e4e
More CastKind work.
...
llvm-svn: 78415
2009-08-07 22:21:05 +00:00
John McCall
c7e8e795fa
Just add global scope to the associated namespaces set instead of tracking it
...
separately. Add the framework (currently unfed) for finding friend declarations
during argument-dependent lookup.
llvm-svn: 78414
2009-08-07 22:18:02 +00:00
Mike Stump
16644668cd
Add vbase offsets to the vtable. Wow, having an rbegin was so
...
fortuitous. WIP.
llvm-svn: 78413
2009-08-07 21:54:03 +00:00
Mike Stump
d9687fded6
Add rbegin and rend for virtual bases, might come in handy some day.
...
llvm-svn: 78412
2009-08-07 21:44:39 +00:00
Bill Wendling
fe3bdb4b6f
Reformatting of lines. Put multiple DEBUG statements under one DEBUG statement.
...
llvm-svn: 78411
2009-08-07 21:33:25 +00:00
Evan Cheng
6e130db3b7
Thumb2 32-bit ldm / stm needs .w suffix if submode is ia.
...
llvm-svn: 78410
2009-08-07 21:19:10 +00:00
Ted Kremenek
0e8e1fde25
Fix: <rdar://problem/7075531> static analyzer wrongly detects unused ivars used in blocks
...
llvm-svn: 78409
2009-08-07 21:13:23 +00:00
Daniel Dunbar
d0470d74df
llvm-mc/AsmMatcher: Move emit for register -> enum matcher into a separate routine.
...
llvm-svn: 78408
2009-08-07 21:01:44 +00:00
Ted Kremenek
d99f2866ac
Constify some pointers. No functionality change.
...
llvm-svn: 78407
2009-08-07 20:55:20 +00:00
Daniel Dunbar
bfdd58e103
XFAIL 2006-11-06-StackTrace.cpp on powerpc-apple-darwin9 until someone feels
...
motivated to fix it.
llvm-svn: 78406
2009-08-07 20:50:58 +00:00
Daniel Dunbar
86ec7bae4f
MSVC warning fixes; patch by Stein Roger!
...
llvm-svn: 78405
2009-08-07 20:50:09 +00:00
Daniel Dunbar
15b8037034
llvm-mc/AsmMatcher: Tweaks in response to feedback.
...
llvm-svn: 78404
2009-08-07 20:33:39 +00:00
Edward O'Callaghan
5583632adf
Code style and Readability fixes. Credit to Craig van Vliet.
...
llvm-svn: 78403
2009-08-07 20:30:09 +00:00
Fariborz Jahanian
40134e71be
More synthesis of copy constructors. Work in progress.
...
llvm-svn: 78402
2009-08-07 20:22:40 +00:00
Mike Stump
a4d94b1a95
Fix typo.
...
llvm-svn: 78401
2009-08-07 20:14:05 +00:00
Jeffrey Yasskin
6bf87df579
To catch bugs like the one fixed in
...
http://llvm.org/viewvc/llvm-project?view=rev&revision=78127 , I'm changing the
ExecutionEngine's global mappings to hold AssertingVH<const GlobalValue>. That
way, if unregistering a mapping fails to actually unregister it, we'll get an
assert. Running the jit nightly tests didn't uncover any actual instances of
the problem.
This also uncovered the fact that AssertingVH<const X> didn't work, so I fixed
that too.
llvm-svn: 78400
2009-08-07 19:54:29 +00:00
Evan Cheng
b64ec07ea6
This is done.
...
llvm-svn: 78399
2009-08-07 19:34:52 +00:00
Evan Cheng
f0237b1aa6
Use 16-bit tMOVgpr2gpr instead of tMOVr to copy GPR registers in Thumb2 mode.
...
llvm-svn: 78398
2009-08-07 19:34:35 +00:00
Evan Cheng
4c3b1ca5a0
Fix support to use NEON for single precision fp math.
...
llvm-svn: 78397
2009-08-07 19:30:41 +00:00
Mike Stump
c266c6d797
Add ability to generate vcall offsets for primary virtual base.
...
llvm-svn: 78396
2009-08-07 19:00:50 +00:00
Anders Carlsson
4f4aab2aeb
Use the correct cast kind as suggested by Doug.
...
llvm-svn: 78395
2009-08-07 18:45:49 +00:00
Andreas Bolka
2f7562c83e
SIV/MIV classification for LDA.
...
LoopDependenceAnalysis::getLoops is currently O(N*M) for a loop-nest of
depth N and a compound SCEV of M atomic SCEVs. As both N and M will
typically be very small, this should not be a problem. If it turns out
to be one, rewriting getLoops as SCEVVisitor will reduce complexity to
O(M).
llvm-svn: 78394
2009-08-07 18:23:41 +00:00
Mike Stump
b93185d05a
Fix some const_cast issues. This is the beginning of the rabbit hole.
...
llvm-svn: 78393
2009-08-07 18:05:12 +00:00
Dale Johannesen
fe95ac0d35
Rewrite previous patch to follow Chris' stylistic
...
preference; no functional change.
llvm-svn: 78391
2009-08-07 17:41:29 +00:00
Devang Patel
b1106fbdbc
Fix dom frontier update. This fixes PR4667.
...
Patch by Jakub Staszak.
llvm-svn: 78388
2009-08-07 17:16:44 +00:00
Ryan Flynn
f53fab87d8
PR3333: warn when shifting by invalid amount
...
llvm-svn: 78385
2009-08-07 16:20:20 +00:00
Andreas Bolka
787591a594
Fix Strong-SIV testcase.
...
llvm-svn: 78384
2009-08-07 15:42:32 +00:00
Sanjiv Gupta
54c847cd6c
Minor fixes to avoid using invalid debugloc.
...
llvm-svn: 78383
2009-08-07 11:00:02 +00:00
Benjamin Kramer
24ee4d0aa4
Simplify code and avoid allocations.
...
llvm-svn: 78382
2009-08-07 10:42:28 +00:00
Daniel Dunbar
cf18d6befb
Improve disabling of X86 AsmMatcher.
...
llvm-svn: 78381
2009-08-07 09:06:38 +00:00
Daniel Dunbar
32d0bb4c4e
Disable X86 AsmMatcher for now, it is causing gcc-4.0 to run out of memory on
...
i386-apple-darwin9. This presumably will get fixed once the generated code
improves.
llvm-svn: 78379
2009-08-07 08:45:03 +00:00
Daniel Dunbar
e10787e710
llvm-mc/AsmMatcher: Move to a slightly more sane matching design.
...
- Still not very sane, but a least its not 60k lines on X86. :)
- In terms of correctness, currently some things are hard wired for X86, and we
still don't properly resolve ambiguities (this is ignoring the instructions
we don't even match due to funny .td stuff or other corner cases).
The high level changes:
1. Represent tokens which are significant for matching explicitly as separate
operands. This uniformly handles not only the instruction mnemonic, but
also 'signficiant' syntax like the '*' in "call * ...".
2. Separate the matching of operands to an instruction from the construction of
the MCInst. In theory this can be done during matching, but since the number
of variations is small I think it makes sense to decompose the problems.
3. Improved a few of the mechanisms to at least successfully flatten / tokenize
the assembly strings for PowerPC and ARM.
4. The comment at the top of AsmMatcherEmitter.cpp explains the approach I'm
moving towards for handling ambiguous instructions. The high-bit is to infer
a partial ordering of the operand classes (and force the user to specify one
if we can't) and use that to resolve ambiguities.
llvm-svn: 78378
2009-08-07 08:26:05 +00:00
Evan Cheng
82ff022ed2
Error out, rather than infinite looping, if constant island pass can't converge.
...
llvm-svn: 78377
2009-08-07 07:35:21 +00:00
Evan Cheng
b1aeeed03e
Another coalescer bug. When a dead copy is eliminated, transfer the kill to a def of the exact register rather than a super-register.
...
llvm-svn: 78376
2009-08-07 07:14:14 +00:00
Douglas Gregor
e26a285c8f
Separate Stmt::Destroy into the entrypoint for destroying a statement
...
or expression (Destroy) from the virtual function used to actually
destroy a given expression (DoDestroy).
llvm-svn: 78375
2009-08-07 06:08:38 +00:00
Evan Cheng
317bd7aab2
tBfar is bl, which clobbers LR.
...
llvm-svn: 78370
2009-08-07 05:45:07 +00:00
Sanjiv Gupta
003dc1fa5b
Run memsel inserter just before emit assembly to avoid tinkering by other passes.
...
llvm-svn: 78369
2009-08-07 05:44:27 +00:00
Chris Lattner
b57430d698
add support for opensuse 11.1/11.2 search paths, patch by Stefan Reinauer
...
and Carl-Daniel Hailfinger!
llvm-svn: 78368
2009-08-07 05:28:24 +00:00
Daniel Dunbar
9a4ae0e9e6
Update CMake.
...
llvm-svn: 78367
2009-08-07 03:59:06 +00:00
Daniel Dunbar
6310426a55
Remove unused function.
...
llvm-svn: 78366
2009-08-07 03:52:07 +00:00
Andrew Lenharth
a3a3453acf
These should be expanded
...
llvm-svn: 78365
2009-08-07 02:17:44 +00:00
Dan Gohman
864ed09b0e
Use std::string() instead of std::string("").
...
llvm-svn: 78364
2009-08-07 01:43:45 +00:00
Dan Gohman
a6d0afcb74
Fix a bunch of namespace pollution.
...
llvm-svn: 78363
2009-08-07 01:32:21 +00:00
Dan Gohman
6c0c21954c
Fix a typo in a comment.
...
llvm-svn: 78362
2009-08-07 01:26:06 +00:00
Evan Cheng
b972e5633f
It turns out most of the thumb2 instructions are not allowed to touch SP. The semantics of such instructions are unpredictable. We have just been lucky that tests have been passing.
...
This patch takes pain to ensure all the PEI lowering code does the right thing when lowering frame indices, insert code to manipulate stack pointers, etc. It's also custom lowering dynamic stack alloc into pseudo instructions so we can insert the right instructions at scheduling time.
This fixes PR4659 and PR4682.
llvm-svn: 78361
2009-08-07 00:34:42 +00:00
Evan Cheng
10af5d621c
Code clean up.
...
llvm-svn: 78360
2009-08-07 00:28:58 +00:00
Lang Hames
8f0d67536e
Added legal stuff, fixed some formatting issues. Removed the graph generator stuff as it was only meant for debugging the solver.
...
llvm-svn: 78359
2009-08-07 00:25:12 +00:00
Dale Johannesen
3a127ce1d8
Add the testcase from PR 4668. This works at the
...
moment, but it's a fragile area.
llvm-svn: 78358
2009-08-07 00:04:42 +00:00