Tanya Lattner
683283763f
Upgrade tests to not use llvm-upgrade.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48484 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-18 04:14:37 +00:00
Tanya Lattner
f04d8d1593
Upgrade tests to not use llvm-upgrade.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48483 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-18 03:45:45 +00:00
Dale Johannesen
e856685710
Get rid of compilation warnings. Per Devang.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48478 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-18 01:52:17 +00:00
Devang Patel
1cee94f041
Identify Analysis pass.
...
Do not run analysis pass again if analysis info is still available.
This fixes PR1441.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48476 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-18 00:39:19 +00:00
Devang Patel
b176038f98
Update heuritics that estimates cost of call instructions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48474 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 23:41:20 +00:00
Dale Johannesen
257f75d0b8
Make Complex long long/double/long double work
...
in ppc64 mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48459 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 17:11:08 +00:00
Duncan Sands
b7f0c082cb
Clarify the unwind attribute. Add assumption
...
about sret made by the optimizers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48452 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 12:17:41 +00:00
Bill Wendling
c386263628
Fix for "make install" of ocaml docs. Patch by Erick Tryzelaar!
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48451 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 07:49:23 +00:00
Nate Begeman
817affccd5
Add support for escaping {} in asm strings, based on patch from Nick Burns.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48450 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 07:26:14 +00:00
Chris Lattner
315123fb6a
Check in some #ifdef'd out code switching call argument
...
lowering over to SparcCallingConv.td. We can't make the switch
yet because we can't say to pass f64 registers in 2 x i32 registers
with the td file yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48449 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:58:37 +00:00
Chris Lattner
e0b1215a92
minor cleanups
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48448 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:57:02 +00:00
Evan Cheng
d183307639
Unbreak JIT. Ignore TargetInstrInfo::IMPLICIT_DEF.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48447 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:56:52 +00:00
Owen Anderson
755ebab37d
A first attempt at updating live intervals, with code lifted from
...
the coalescer. This doesn't really work, but gets us farther than
before.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48446 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:08:26 +00:00
Chris Lattner
b26bc75213
remove dead code
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48445 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:04:10 +00:00
Chris Lattner
98949a6d2c
Switch sparc from using LowerCallTo to using LowerOperation(CALL) like
...
other targets. Use autogenerated calling conv to lower result of
calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48444 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 06:01:07 +00:00
Chris Lattner
5a65b92830
Start moving sparc to use SparcCallingConv.td, switching over
...
return lowering first. This fixes a bug where the top and bottom
of i64 values were returned in the wrong registers before.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48443 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 05:41:48 +00:00
Chris Lattner
d23405e6f0
split sparc lowering out into SparcISelLowering.{cpp|h} to follow
...
best practices.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48442 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 03:21:36 +00:00
Chris Lattner
601fe38b1e
refactor the LowerOperation code out to individual functions for
...
each lowering, which is 'best practice'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48441 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 02:52:07 +00:00
Dale Johannesen
fdd3ade005
Next round of PPC32 ABI changes. Allow for gcc
...
behavior where a callee thinks a param will be
present in memory, even though the ABI doc says
it doesn't have to be. Handle complex long long
and complex double (4 and 8 return regs).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48439 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 02:13:43 +00:00
Chris Lattner
349155b671
various rotate fun.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48438 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 01:47:51 +00:00
Chris Lattner
9493268124
ensure we continue matching x86-64 rotates.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48437 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-17 01:35:03 +00:00
Nate Begeman
d254ca2b8e
__builtin_ia32_movntdqa reads memory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48431 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 21:15:47 +00:00
Nate Begeman
bc4efb8ac7
Add a couple missing SSE4 instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48430 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 21:14:46 +00:00
Gordon Henriksen
3e0c835593
C and Objective Caml bindings for the TargetData class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48422 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 20:08:03 +00:00
Bill Wendling
f7a91e68a8
Add assert for non-hexadecimal radixes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48421 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 20:05:52 +00:00
Gordon Henriksen
1e75542cc4
Housekeeping.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48420 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 16:33:35 +00:00
Gordon Henriksen
41ba1546eb
C and Objective Caml bindings for several scalar transforms.
...
Patch originally by Erick Tryzelaar, but has been modified somewhat.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48419 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 16:32:40 +00:00
Gordon Henriksen
395b414906
Remove unnecessary includes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48418 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 15:55:43 +00:00
Nick Lewycky
3f63785cc6
All of these tests had out of date syntax and were never even running through
...
llvm-upgrade because nobody noticed them failing.
Update to use new syntax and actually check for the right failure by looking at
the error message.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48417 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 07:55:46 +00:00
Nick Lewycky
917a5d9425
Functions are allowed to return structures. (Note that this test never failed.)
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48416 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 07:49:49 +00:00
Nick Lewycky
2476841553
Regressions/ is long gone.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48415 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 07:31:23 +00:00
Nick Lewycky
d703f65984
Commit works on regular functions too. Fix the syntax to allow @foo.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48414 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 07:18:12 +00:00
Gordon Henriksen
d78c0f5a72
C and Objective Caml bindings for PassManagers.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48413 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 04:20:44 +00:00
Christopher Lamb
c929823525
Make insert_subreg a two-address instruction, vastly simplifying LowerSubregs pass. Add a new TII, subreg_to_reg, which is like insert_subreg except that it takes an immediate implicit value to insert into rather than a register.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48412 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-16 03:12:01 +00:00
Gordon Henriksen
606c5aa084
Minor documentation fix.
...
Patch by Erick Tryzelaar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48382 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-15 00:26:23 +00:00
Evan Cheng
20ccded7de
Remove isImplicitDef TargetInstrDesc flag.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48381 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-15 00:19:36 +00:00
Evan Cheng
da47e6e0d0
Replace all target specific implicit def instructions with a target independent one: TargetInstrInfo::IMPLICIT_DEF.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48380 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-15 00:03:38 +00:00
Gordon Henriksen
af59b105bb
Expose Module::dump via C and Ocaml.
...
Patch by Erick Tryzelaar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48379 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 23:58:56 +00:00
Gordon Henriksen
3c5da81df8
Expose Module::dump via C and Ocaml.
...
Patch by Erick Tryzelaar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48378 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 23:52:53 +00:00
Gabor Greif
59dc98de2f
move the Use destructor where it belongs to
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48376 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 22:03:02 +00:00
Evan Cheng
f8e43be758
Back out r48353. Not needed.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48375 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 22:01:01 +00:00
Duncan Sands
23a1d0c161
Do not generate special entries in the dwarf eh
...
table for nounwind calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48373 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 21:36:24 +00:00
Chris Lattner
9453295a29
Restore this member, which is used on win32.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48372 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 21:17:54 +00:00
Evan Cheng
c17ba8a28d
Fix PR2138. Apparently any modification to a std::multimap (including remove entries for a different key) can invalidate multimap iterators.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48371 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 20:44:01 +00:00
Chris Lattner
7e526e7544
this was removed from the Unix side.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48370 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 20:41:50 +00:00
Dan Gohman
b973d5f9b5
Update comments; getPassName no longer uses RTTI.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48369 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 18:27:04 +00:00
Dan Gohman
d7a3541a05
Move the PMStack class out of Pass.h and into PassManagers.h.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48367 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 18:14:29 +00:00
Dale Johannesen
8f5422c24b
Implement the real calling convention for ppc32 Altivec:
...
vectors go at the end of the memory area, after all
non-vector parameters.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48364 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 17:41:26 +00:00
Evan Cheng
029d9dafa0
Fix some 80 col violations.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48361 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 07:46:48 +00:00
Evan Cheng
172b794cd5
Fix a number of encoding bugs. SSE 4.1 instructions MPSADBWrri, PINSRDrr, etc. have 8-bits immediate field (ImmT == Imm8).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48360 91177308-0d34-0410-b5e6-96231b3b80d8
2008-03-14 07:39:27 +00:00