Chris Lattner [Mon, 11 Dec 2006 00:12:31 +0000 (00:12 +0000)]
clarify some comments, simplify some checks, fix:
Regression/Transforms/IndVarsSimplify/2006-12-10-BitCast.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32420
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Dec 2006 00:12:07 +0000 (00:12 +0000)]
testcase for a regression introduced by the recent cast patch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32419
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Dec 2006 23:56:50 +0000 (23:56 +0000)]
* Eliminate calls to CastInst::createInferredCast.
* Add support for promoting unions with fp values in them. This produces
our new int<->fp bitcast instructions, implementing
Transforms/ScalarRepl/union-fp-int.ll
As an example, this allows us to compile this:
union intfloat { int i; float f; };
float invsqrt(const float arg_x) {
union intfloat x = { .f = arg_x };
const float xhalf = arg_x * 0.5f;
x.i = 0x5f3759df - (x.i >> 1);
return x.f * (1.5f - xhalf * x.f * x.f);
}
into:
_invsqrt:
movss 4(%esp), %xmm0
movd %xmm0, %eax
sarl %eax
movl $
1597463007, %ecx
subl %eax, %ecx
movd %ecx, %xmm1
mulss LCPI1_0, %xmm0
mulss %xmm1, %xmm0
movss LCPI1_1, %xmm2
mulss %xmm1, %xmm0
subss %xmm0, %xmm2
movl 8(%esp), %eax
mulss %xmm2, %xmm1
movss %xmm1, (%eax)
ret
instead of:
_invsqrt:
subl $4, %esp
movss 8(%esp), %xmm0
movss %xmm0, (%esp)
movl (%esp), %eax
movl $
1597463007, %ecx
sarl %eax
subl %eax, %ecx
movl %ecx, (%esp)
mulss LCPI1_0, %xmm0
movss (%esp), %xmm1
mulss %xmm1, %xmm0
mulss %xmm1, %xmm0
movss LCPI1_1, %xmm2
subss %xmm0, %xmm2
mulss %xmm2, %xmm1
movl 12(%esp), %eax
movss %xmm1, (%eax)
addl $4, %esp
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32418
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Dec 2006 23:52:28 +0000 (23:52 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32417
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 10 Dec 2006 23:29:19 +0000 (23:29 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32416
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Sun, 10 Dec 2006 23:12:42 +0000 (23:12 +0000)]
Cleaned setjmp/longjmp lowering interfaces. Now we're producing right
code (both asm & cbe) for Mingw32 target.
Removed autoconf checks for underscored versions of setjmp/longjmp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32415
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Dec 2006 19:01:52 +0000 (19:01 +0000)]
make statistics and timing info print even if the JIT'd program calls exit
instead of returning from main.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32414
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sun, 10 Dec 2006 13:09:42 +0000 (13:09 +0000)]
Reverting until finding the cause of secondary bugs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32413
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Sun, 10 Dec 2006 12:13:31 +0000 (12:13 +0000)]
__PPC64CompilationCallback code was allowing registers to be clobbered by stub.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32412
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 10 Dec 2006 07:40:46 +0000 (07:40 +0000)]
fix PR1039 by making timing info be destroyed by llvm_shutdown, not by
static dtors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32411
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 10 Dec 2006 04:56:38 +0000 (04:56 +0000)]
Don't bother with setting the path before running llvm-gcc4, it doesn't
need it like llvm-gcc3 did.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32410
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 10 Dec 2006 04:09:19 +0000 (04:09 +0000)]
For PR739:
Define a DESTDIR variable and use it to define the various install
locations. This allows DESTDIR to be overridden on the command line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32409
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sun, 10 Dec 2006 02:53:14 +0000 (02:53 +0000)]
.align is in bits
.comm is in bytes
:-(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32408
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 9 Dec 2006 23:14:08 +0000 (23:14 +0000)]
fix test/Regression/CodeGen/X86/weak.ll
if a variable has no initialization, I->getInitializer() will fail
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32407
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sat, 9 Dec 2006 21:21:06 +0000 (21:21 +0000)]
use a . instead of a % in the grep expression
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32406
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 19:41:25 +0000 (19:41 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32405
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 19:40:41 +0000 (19:40 +0000)]
Fix test/Regression/Assembler/2006-12-09-Cast-To-Bool.ll
Do not upgrade casts of bool to bool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32404
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 19:39:56 +0000 (19:39 +0000)]
Fix the run line and make this test more specific.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32403
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 19:35:43 +0000 (19:35 +0000)]
Add a check to catch an incorrect upgrade.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32402
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 16:57:22 +0000 (16:57 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32400
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 16:56:55 +0000 (16:56 +0000)]
When upgrading cast to bool to a setne, generate icmp ne instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32399
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 05:13:50 +0000 (05:13 +0000)]
Too soon to commit, revert.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32397
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 05:13:01 +0000 (05:13 +0000)]
New test cases for regressions in the SetCC -> ICmp patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32396
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 9 Dec 2006 04:42:33 +0000 (04:42 +0000)]
Allow the input of the test program to be specified.
Don't generate the reference output for each comparison.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32395
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 9 Dec 2006 02:42:38 +0000 (02:42 +0000)]
Preliminary soft float support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32394
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 9 Dec 2006 02:41:30 +0000 (02:41 +0000)]
Added option -soft-float to generate SW fp library calls instead of fp instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32393
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 9 Dec 2006 01:35:43 +0000 (01:35 +0000)]
Fixed some formatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32392
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 9 Dec 2006 01:27:51 +0000 (01:27 +0000)]
Another example of using the llvm IO streams.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32391
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sat, 9 Dec 2006 01:20:34 +0000 (01:20 +0000)]
Add documentation for how to use the new LLVM streams.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32390
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 9 Dec 2006 01:11:34 +0000 (01:11 +0000)]
Analysis resolver now manages AnalysisImpls for the given patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32389
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 9 Dec 2006 00:09:12 +0000 (00:09 +0000)]
Top level pass manager keeps track of other managers, so this can be
removed now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32388
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Sat, 9 Dec 2006 00:07:38 +0000 (00:07 +0000)]
Use analysis resolver to find the info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32387
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 23:57:43 +0000 (23:57 +0000)]
Do not drop ImmutablePasses on the floor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32386
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 23:53:00 +0000 (23:53 +0000)]
Set AnalysisResolver for the passes when they are inserted into
pass manager queuer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32385
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 23:52:04 +0000 (23:52 +0000)]
Add AnalysisResolver_New.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32384
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 23:28:54 +0000 (23:28 +0000)]
Add AnalysisResolver_New. It is a replacement for existing
AnalysisResolver.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32383
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 23:11:43 +0000 (23:11 +0000)]
Keep track of other pass managers, that are not directly managed by
top level manager. Use this info to findAnalysisPass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32382
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 22:57:48 +0000 (22:57 +0000)]
Implement top level FunctionPassManager::run(Function &F)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32381
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 22:47:25 +0000 (22:47 +0000)]
Do not keep yet another list of pass managers in PassManagerImpl_New.
Use one provided by toplevel manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32380
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 22:34:02 +0000 (22:34 +0000)]
Remove unused schedulePass() parameter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32379
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 22:32:32 +0000 (22:32 +0000)]
Remove unused getAnalysisPass and getAnalysisPassFromManager
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32378
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 22:30:11 +0000 (22:30 +0000)]
Implement PMTopLevel::findAnalysisPass() and
PMDataManager::findAnalysisPass()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32377
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Dec 2006 22:06:02 +0000 (22:06 +0000)]
%progbits not @progbits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32376
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 8 Dec 2006 21:52:01 +0000 (21:52 +0000)]
Incorporate any changes in the successor blocks into the result of
MarkAliveBlocks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32375
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Dec 2006 21:43:02 +0000 (21:43 +0000)]
add missing &&
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32374
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Dec 2006 21:24:58 +0000 (21:24 +0000)]
add \"aw\",@progbits" to ctors and dtors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32373
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Dec 2006 20:00:42 +0000 (20:00 +0000)]
Change the implementation of statistic to not need destructors at all.
Instead, the stat info is printed when llvm_shutdown() is called.
These also don't need static ctors, but getting rid of them is uglier:
still investigating. This reduces the number of static dtors in llvm from
~1400 to ~750.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32372
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 19:04:09 +0000 (19:04 +0000)]
During runOnModule() do initialization and finalization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32371
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 19:03:05 +0000 (19:03 +0000)]
Reuse code. Directly use runOnFunction().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32370
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 8 Dec 2006 18:58:38 +0000 (18:58 +0000)]
Add the -ldl library option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32369
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 18:57:16 +0000 (18:57 +0000)]
Implement FunctionPassManager_New::FunctionPassManager_New(ModuleProvider *P)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32368
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 18:54:15 +0000 (18:54 +0000)]
test packed struct codegen on x86
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32367
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Dec 2006 18:45:48 +0000 (18:45 +0000)]
Move findTiedToSrcOperand to TargetInstrDescriptor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32366
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 18:45:38 +0000 (18:45 +0000)]
packed initializers too in the test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32365
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 8 Dec 2006 18:41:21 +0000 (18:41 +0000)]
fix truncstorei1
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32364
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 18:36:24 +0000 (18:36 +0000)]
feature test for packed structs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32363
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 18:07:09 +0000 (18:07 +0000)]
Hopefully these are the regenerated files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32362
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 18:06:16 +0000 (18:06 +0000)]
Packed Structures
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32361
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 17:50:05 +0000 (17:50 +0000)]
A backwards compatible bc format for packed structs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32360
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 8 Dec 2006 17:39:49 +0000 (17:39 +0000)]
This test needs to be upgraded.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32359
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 8 Dec 2006 17:38:55 +0000 (17:38 +0000)]
For PR950:
Add a test for a regression in combining of ICmp instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32358
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Fri, 8 Dec 2006 17:13:00 +0000 (17:13 +0000)]
Packed Structure Definitions (docs)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32357
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Dec 2006 08:02:34 +0000 (08:02 +0000)]
Proper fix for PR1037: to determine is a VR is a modref, check 1) whether it is
tied to another oeprand, 2) whether is is being tied to by another operand. So
the destination operand of a two-address MI can be correctly identified.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32354
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Dec 2006 07:59:51 +0000 (07:59 +0000)]
findTiedToSrcOperand() changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32353
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 8 Dec 2006 07:57:56 +0000 (07:57 +0000)]
Use MI's TargetInstrDescriptor.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32352
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Dec 2006 05:41:26 +0000 (05:41 +0000)]
Fix a bug introduced by the streams patch. DEBUG code was made unconditional.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32351
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Fri, 8 Dec 2006 05:06:28 +0000 (05:06 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32350
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Dec 2006 05:03:54 +0000 (05:03 +0000)]
this warning is obsolete with llvmgcc3 being gone
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32349
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Dec 2006 04:54:03 +0000 (04:54 +0000)]
this is an initial patch to switch the ppc64 jit over to working in PIC mode,
which allows the code to be above the 2G marker. We still need to JIT emit
dyld stubs to support external, weak, common, etc globals, but that will
happen tomorrow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32348
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 8 Dec 2006 02:01:32 +0000 (02:01 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32347
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 01:38:28 +0000 (01:38 +0000)]
BasicBlockPassManager_New::runOnFunction()
Do initialization and finalization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32346
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 00:59:05 +0000 (00:59 +0000)]
doInitialization and doFinalization for BasicBlockPassManager_New
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32345
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 8 Dec 2006 00:37:52 +0000 (00:37 +0000)]
Reimplement removeDeadPasses().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32344
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Thu, 7 Dec 2006 23:55:55 +0000 (23:55 +0000)]
Simplify a bit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32343
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 23:55:10 +0000 (23:55 +0000)]
set Last User.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32342
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Dec 2006 23:44:07 +0000 (23:44 +0000)]
fix incorrect encoding of rldicr, used by ppc64 function stubs, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32341
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 7 Dec 2006 23:41:45 +0000 (23:41 +0000)]
Don't use <sstream> in Streams.h but <iosfwd> instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32340
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 23:24:58 +0000 (23:24 +0000)]
Maintain level(or depth) of pass manager in pass manager food chain.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32339
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 23:05:44 +0000 (23:05 +0000)]
New method, PMDataManager::collectRequiredAnalysisPasses()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32338
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 7 Dec 2006 22:38:06 +0000 (22:38 +0000)]
fix alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32337
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Dec 2006 22:36:47 +0000 (22:36 +0000)]
Fix CodeGen/PowerPC/2006-12-07-SelectCrash.ll on PPC64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32336
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Dec 2006 22:36:14 +0000 (22:36 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32335
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 22:34:21 +0000 (22:34 +0000)]
When new pass manager is created, initialize available analysis info
of existing manager at the same level. Otherwise, such info may be
considered as available, which not true.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32334
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 7 Dec 2006 22:21:48 +0000 (22:21 +0000)]
What should be the last unnecessary <iostream>s in the library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32333
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 22:17:09 +0000 (22:17 +0000)]
PMDataManager does not maintain LastUser info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32332
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Dec 2006 22:15:58 +0000 (22:15 +0000)]
fix CodeGen/PowerPC/2006-12-07-LargeAlloca.ll on ppc64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32331
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 7 Dec 2006 22:15:20 +0000 (22:15 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32330
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 22:09:36 +0000 (22:09 +0000)]
Make current pass info available _after_ removing info that is not
preserved.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32329
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:58:50 +0000 (21:58 +0000)]
Add TODOs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32328
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:44:12 +0000 (21:44 +0000)]
Fix thinko.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32327
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:32:57 +0000 (21:32 +0000)]
Top level manages schedule the pass immediately at the time of insertion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32326
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:27:23 +0000 (21:27 +0000)]
Now FunctionPassManagerImpl_New and PassManagerImpl_New derives from
PMTopLevelManager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32325
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:10:57 +0000 (21:10 +0000)]
Reimplement schedulePass interface. Move it into PMTopLevelManager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32324
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 21:02:08 +0000 (21:02 +0000)]
While initializing AvailableAnalysis info, make ImmutablePasses available
immediately.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32323
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 20:51:18 +0000 (20:51 +0000)]
Add ImmutablePass into the list of info managed by top level pass
manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32322
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 7 Dec 2006 20:28:15 +0000 (20:28 +0000)]
Removed more <iostream> includes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32321
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 7 Dec 2006 20:04:42 +0000 (20:04 +0000)]
Removing even more <iostream> includes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32320
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 20:03:49 +0000 (20:03 +0000)]
If pass reserves all analysis info then each info is not separately
included in PreservedSet. So check getPreservesAll() first.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32319
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 19:57:52 +0000 (19:57 +0000)]
Pass Managers themselves do not invalidate any analysis info.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32318
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 7 Dec 2006 19:54:15 +0000 (19:54 +0000)]
Add a handle to the top level pass manager in PMDataManager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32317
91177308-0d34-0410-b5e6-
96231b3b80d8