oota-llvm.git
17 years agoShould never see an indexed load / store with zero offset.
Evan Cheng [Thu, 3 May 2007 23:30:36 +0000 (23:30 +0000)]
Should never see an indexed load / store with zero offset.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36714 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAllow strength reduction to make use of addressing modes for the
Dan Gohman [Thu, 3 May 2007 23:20:33 +0000 (23:20 +0000)]
Allow strength reduction to make use of addressing modes for the
address operand in a prefetch intrinsic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36713 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoenumerate parameter attr lists.
Chris Lattner [Thu, 3 May 2007 22:46:43 +0000 (22:46 +0000)]
enumerate parameter attr lists.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36709 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEncoding calling conv info in call/invoke instrs, tree add now round trips completely
Chris Lattner [Thu, 3 May 2007 22:34:03 +0000 (22:34 +0000)]
Encoding calling conv info in call/invoke instrs, tree add now round trips completely

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36707 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agothe type field for a store is the type of the pointer, not the value.
Chris Lattner [Thu, 3 May 2007 22:21:59 +0000 (22:21 +0000)]
the type field for a store is the type of the pointer, not the value.

With this fix I can round trip treeaadd, only losing calling conv info.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36706 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agodon't bother encoding # varargs
Chris Lattner [Thu, 3 May 2007 22:19:34 +0000 (22:19 +0000)]
don't bother encoding # varargs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36705 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix encoding of BB names in the symtab
Chris Lattner [Thu, 3 May 2007 22:18:21 +0000 (22:18 +0000)]
fix encoding of BB names in the symtab

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36704 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a new code
Chris Lattner [Thu, 3 May 2007 22:16:11 +0000 (22:16 +0000)]
add a new code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36703 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agobug fixes
Chris Lattner [Thu, 3 May 2007 22:09:51 +0000 (22:09 +0000)]
bug fixes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36701 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUnbreak VC++ build.
Jeff Cohen [Thu, 3 May 2007 22:09:21 +0000 (22:09 +0000)]
Unbreak VC++ build.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36700 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoimplement the rest of the instructions
Chris Lattner [Thu, 3 May 2007 22:04:19 +0000 (22:04 +0000)]
implement the rest of the instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36699 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse iterative while loop instead of recursive function call.
Devang Patel [Thu, 3 May 2007 20:55:18 +0000 (20:55 +0000)]
Use iterative while loop instead of recursive function call.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36694 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEvan's patch to avoid FPreg->intreg copy for cvt; store to mem
Dale Johannesen [Thu, 3 May 2007 20:54:42 +0000 (20:54 +0000)]
Evan's patch to avoid FPreg->intreg copy for cvt; store to mem

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36693 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDebug support for arm-linux.
Lauro Ramos Venancio [Thu, 3 May 2007 20:28:35 +0000 (20:28 +0000)]
Debug support for arm-linux.
Patch by Raul Herbster.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36690 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd a few more instructions, getting close
Chris Lattner [Thu, 3 May 2007 18:58:09 +0000 (18:58 +0000)]
add a few more instructions, getting close

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36688 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoIndent the .text, .data, and .bss directives in assembly output, so that
Dan Gohman [Thu, 3 May 2007 18:46:30 +0000 (18:46 +0000)]
Indent the .text, .data, and .bss directives in assembly output, so that
they are consistent with the other directives.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36687 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse the explicit keyword for the SCEV class' constructor.
Dan Gohman [Thu, 3 May 2007 18:45:06 +0000 (18:45 +0000)]
Use the explicit keyword for the SCEV class' constructor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36686 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded -rsh-host and -rsh-user to support remote execution.
Evan Cheng [Thu, 3 May 2007 18:36:15 +0000 (18:36 +0000)]
Added -rsh-host and -rsh-user to support remote execution.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36685 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThis is a patch to fix a compile error in STLExtras.h, and
Chris Lattner [Thu, 3 May 2007 18:32:10 +0000 (18:32 +0000)]
This is a patch to fix a compile error in STLExtras.h, and
a bug in GraphWriter.cpp.

Patch by Florian Brandner

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36684 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agonegatize -> negative
Evan Cheng [Thu, 3 May 2007 18:20:17 +0000 (18:20 +0000)]
negatize -> negative

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36683 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosilence annoying gcc 4.3 warnings
Chris Lattner [Thu, 3 May 2007 18:15:56 +0000 (18:15 +0000)]
silence annoying gcc 4.3 warnings

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36681 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agosilence some annoying gcc 4.3 warnings
Chris Lattner [Thu, 3 May 2007 18:15:36 +0000 (18:15 +0000)]
silence some annoying gcc 4.3 warnings

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36680 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove extraneous type qualifiers
Chris Lattner [Thu, 3 May 2007 18:14:56 +0000 (18:14 +0000)]
remove extraneous type qualifiers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36679 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove extraneous top-level semi's
Chris Lattner [Thu, 3 May 2007 18:13:15 +0000 (18:13 +0000)]
remove extraneous top-level semi's

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36678 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove two useless functions. Just inherit Type's implementation instead.
Chris Lattner [Thu, 3 May 2007 17:10:20 +0000 (17:10 +0000)]
remove two useless functions.  Just inherit Type's implementation instead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36677 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoremove useless type qualifiers
Chris Lattner [Thu, 3 May 2007 17:09:36 +0000 (17:09 +0000)]
remove useless type qualifiers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36676 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoavoid invalid C++ token in #error
Chris Lattner [Thu, 3 May 2007 16:57:26 +0000 (16:57 +0000)]
avoid invalid C++ token in #error

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36674 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAllow i/s to match (gv+c). This fixes CodeGen/PowerPC/2007-05-03-InlineAsm-S-Constra...
Chris Lattner [Thu, 3 May 2007 16:54:34 +0000 (16:54 +0000)]
Allow i/s to match (gv+c).  This fixes CodeGen/PowerPC/2007-05-03-InlineAsm-S-Constraint.ll

and PR1382

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36672 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agonew testcase
Chris Lattner [Thu, 3 May 2007 16:54:08 +0000 (16:54 +0000)]
new testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36671 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix two classes of bugs:
Chris Lattner [Thu, 3 May 2007 16:52:29 +0000 (16:52 +0000)]
Fix two classes of bugs:
  1. x86 backend rejected (&gv+c) for the 'i' constraint when in static mode.
  2. the matcher didn't correctly reject and accept some global addresses.
     the right predicate is GVRequiresExtraLoad, not "relomodel = pic".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36670 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd support for printing offset from global
Chris Lattner [Thu, 3 May 2007 16:42:23 +0000 (16:42 +0000)]
add support for printing offset from global

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36669 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorevert accidental commit
Chris Lattner [Thu, 3 May 2007 16:40:25 +0000 (16:40 +0000)]
revert accidental commit

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36668 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd support for printing offset of global
Chris Lattner [Thu, 3 May 2007 16:39:48 +0000 (16:39 +0000)]
add support for printing offset of global

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36667 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSets the section names for fixed-size constants and use the mergeable
Dan Gohman [Thu, 3 May 2007 16:38:57 +0000 (16:38 +0000)]
Sets the section names for fixed-size constants and use the mergeable
flag for ELF on x86 so that duplicate constants can be eliminated by
the linker. This matches what GCC does with its -fmerge-constants
option, which is enabled at most -O levels.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36666 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake my proxy happy.
Lauro Ramos Venancio [Thu, 3 May 2007 14:05:07 +0000 (14:05 +0000)]
Make my proxy happy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36665 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorevert reid's patch to fix these failures:
Chris Lattner [Thu, 3 May 2007 02:57:13 +0000 (02:57 +0000)]
revert reid's patch to fix these failures:
test/CodeGen/CBackend/2007-01-08-ParamAttr-ICmp.ll for PR1099 [DEJAGNU]
Applications/SPASS/SPASS [CBE]
Regression/C/2004-03-15-IndirectGoto [CBE]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36664 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTypo. It's checking if V is multiple of 4, not multiple of 3. :-)
Evan Cheng [Thu, 3 May 2007 02:00:18 +0000 (02:00 +0000)]
Typo. It's checking if V is multiple of 4, not multiple of 3. :-)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36663 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDrop 'const'
Devang Patel [Thu, 3 May 2007 01:11:54 +0000 (01:11 +0000)]
Drop 'const'

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36662 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNew test.
Devang Patel [Thu, 3 May 2007 00:42:22 +0000 (00:42 +0000)]
New test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36661 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomatch a reassociated form of fnmul. This implements CodeGen/ARM/fnmul.ll
Chris Lattner [Thu, 3 May 2007 00:32:00 +0000 (00:32 +0000)]
match a reassociated form of fnmul.  This implements CodeGen/ARM/fnmul.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36660 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agomatch a reassociated form of fnmul
Chris Lattner [Thu, 3 May 2007 00:31:40 +0000 (00:31 +0000)]
match a reassociated form of fnmul

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36659 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoexpose HonorSignDependentRoundingFPMathOption to .td files
Chris Lattner [Thu, 3 May 2007 00:27:11 +0000 (00:27 +0000)]
expose HonorSignDependentRoundingFPMathOption to .td files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36658 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a new option.
Chris Lattner [Thu, 3 May 2007 00:16:07 +0000 (00:16 +0000)]
Add a new option.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36657 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoNon-algorithmic change. Moved definitions around into separate sections
Bill Wendling [Wed, 2 May 2007 23:11:52 +0000 (23:11 +0000)]
Non-algorithmic change. Moved definitions around into separate sections
for SSE1, SSE2, SSE3, and SSSE3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36656 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoProperly set arguments bitwidth of EHSELECT node
Anton Korobeynikov [Wed, 2 May 2007 22:15:48 +0000 (22:15 +0000)]
Properly set arguments bitwidth of EHSELECT node

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36654 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate.
Bill Wendling [Wed, 2 May 2007 21:42:20 +0000 (21:42 +0000)]
Update.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36653 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse 'static const char' instead of 'static const int'.
Devang Patel [Wed, 2 May 2007 21:39:20 +0000 (21:39 +0000)]
Use 'static const char' instead of 'static const int'.
Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36652 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDisable RTTI handling until we're ready.
Reid Spencer [Wed, 2 May 2007 21:31:09 +0000 (21:31 +0000)]
Disable RTTI handling until we're ready.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36651 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd a rule to get the footprint of binaries and libraries.
Reid Spencer [Wed, 2 May 2007 21:29:39 +0000 (21:29 +0000)]
Add a rule to get the footprint of binaries and libraries.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36650 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoRe-install patch to enable use of PassID.
Devang Patel [Wed, 2 May 2007 20:38:25 +0000 (20:38 +0000)]
Re-install patch to enable use of PassID.
I am preparing another patch to address the failure that prompted
Chris to revert this patch earlier.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36649 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix build error.
Lauro Ramos Venancio [Wed, 2 May 2007 20:37:47 +0000 (20:37 +0000)]
Fix build error.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36648 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEmit correct register move information in eh frames for X86. This allows Shootout...
Anton Korobeynikov [Wed, 2 May 2007 19:53:33 +0000 (19:53 +0000)]
Emit correct register move information in eh frames for X86. This allows Shootout-C++/except to pass on x86/linux
with non-llvm-compiled (e.g. "native") unwind runtime.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36647 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoEmit correct DWARF reg # for RA (return address) register
Anton Korobeynikov [Wed, 2 May 2007 08:46:03 +0000 (08:46 +0000)]
Emit correct DWARF reg # for RA (return address) register

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36646 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTest that TREE_CONSTANT is being set correctly.
Duncan Sands [Wed, 2 May 2007 07:43:14 +0000 (07:43 +0000)]
Test that TREE_CONSTANT is being set correctly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36645 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTest that inline assembler compiles (llvm-gcc added an extra "uses" parameter
Duncan Sands [Wed, 2 May 2007 07:41:22 +0000 (07:41 +0000)]
Test that inline assembler compiles (llvm-gcc added an extra "uses" parameter
to ASM_EXPR).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36644 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoupdate to reflect reality
Chris Lattner [Wed, 2 May 2007 05:47:22 +0000 (05:47 +0000)]
update to reflect reality

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36643 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd reader logic for terminator instrs.
Chris Lattner [Wed, 2 May 2007 05:46:45 +0000 (05:46 +0000)]
add reader logic for terminator instrs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36642 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd reader support for a bunch of new instructions
Chris Lattner [Wed, 2 May 2007 05:16:49 +0000 (05:16 +0000)]
add reader support for a bunch of new instructions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36641 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoread a few instructions, fix some bugs. This is enough to be able to round
Chris Lattner [Wed, 2 May 2007 04:27:25 +0000 (04:27 +0000)]
read a few instructions, fix some bugs.  This is enough to be able to round
trip function bodies like this:

define <2 x i64> @foo(<2 x i64> %x, <2 x i64> %y) {
        %tmp4 = bitcast <2 x i64> %y to <8 x i16>               ; <<8 x i16>> [#uses=1]
        %tmp5 = bitcast <2 x i64> %x to <8 x i16>               ; <<8 x i16>> [#uses=1]
        %tmp = add <8 x i16> %tmp5, %tmp4               ; <<8 x i16>> [#uses=1]
        %tmp6 = bitcast <8 x i16> %tmp to <2 x i64>             ; <<2 x i64>> [#uses=1]
        ret <2 x i64> %tmp6
}

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36640 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agouse the correct code for binop instrs
Chris Lattner [Wed, 2 May 2007 04:26:36 +0000 (04:26 +0000)]
use the correct code for binop instrs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36639 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agorevert enough of devang's recent patches to get the tree basically working again
Chris Lattner [Wed, 2 May 2007 04:25:31 +0000 (04:25 +0000)]
revert enough of devang's recent patches to get the tree basically working again

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36638 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agodisable this assertion as a hack to get the build more unbroken :(
Chris Lattner [Wed, 2 May 2007 04:01:44 +0000 (04:01 +0000)]
disable this assertion as a hack to get the build more unbroken :(

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36637 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoMake sign extension work correctly for unusual bit widths.
Reid Spencer [Wed, 2 May 2007 02:17:41 +0000 (02:17 +0000)]
Make sign extension work correctly for unusual bit widths.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36635 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd some support for (Darwin) code-generating directives in getInlineAsmLength.
Dale Johannesen [Wed, 2 May 2007 01:02:40 +0000 (01:02 +0000)]
Add some support for (Darwin) code-generating directives in getInlineAsmLength.
Support is incomplete, but more accurate than gcc's.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36634 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix couple of bugs connected with eh info:
Anton Korobeynikov [Tue, 1 May 2007 22:23:12 +0000 (22:23 +0000)]
Fix couple of bugs connected with eh info:
1. Correct output offsets on Linux
2. Fix "style" of personality function. It shouldn't be indirect.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36633 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDo not use typeinfo to identify pass in pass manager.
Devang Patel [Tue, 1 May 2007 21:15:47 +0000 (21:15 +0000)]
Do not use typeinfo to identify pass in pass manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36632 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUpdate doc to reflect changes I am about to install to fix PR 888.
Devang Patel [Tue, 1 May 2007 20:55:38 +0000 (20:55 +0000)]
Update doc to reflect changes I am about to install to fix PR 888.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36631 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoDoh. PC displacement is between the constantpool and the add instruction.
Evan Cheng [Tue, 1 May 2007 20:27:19 +0000 (20:27 +0000)]
Doh. PC displacement is between the constantpool and the add instruction.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36630 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTest handling of TRY_CATCH_EXPRs for which the handler is a sequence of
Duncan Sands [Tue, 1 May 2007 18:49:30 +0000 (18:49 +0000)]
Test handling of TRY_CATCH_EXPRs for which the handler is a sequence of
ordinary statements, rather than a list of CATCH_EXPRs or an EH_FILTER_EXPR.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36629 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUse correct PC symbol
Anton Korobeynikov [Tue, 1 May 2007 10:19:31 +0000 (10:19 +0000)]
Use correct PC symbol

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36628 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdjust correct EH-related sections
Anton Korobeynikov [Tue, 1 May 2007 10:16:06 +0000 (10:16 +0000)]
Adjust correct EH-related sections

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36627 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoeliminateFrameIndex() change.
Evan Cheng [Tue, 1 May 2007 09:13:03 +0000 (09:13 +0000)]
eliminateFrameIndex() change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36626 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoIf call frame is not part of stack frame and no dynamic alloc, eliminateFrameIndex...
Evan Cheng [Tue, 1 May 2007 09:01:42 +0000 (09:01 +0000)]
If call frame is not part of stack frame and no dynamic alloc, eliminateFrameIndex() must adjust SP offset with size of call frames.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36625 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoPass call frame setup SP adjustment along to eliminateFrameIndex().
Evan Cheng [Tue, 1 May 2007 08:59:18 +0000 (08:59 +0000)]
Pass call frame setup SP adjustment along to eliminateFrameIndex().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36624 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdd SPAdj parameter to account for call frame setup SP adjustment.
Evan Cheng [Tue, 1 May 2007 08:58:27 +0000 (08:58 +0000)]
Add SPAdj parameter to account for call frame setup SP adjustment.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36623 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoForgot about chain result; also UNDEF cannot have multiple values.
Evan Cheng [Tue, 1 May 2007 08:53:39 +0000 (08:53 +0000)]
Forgot about chain result; also UNDEF cannot have multiple values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36622 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agofix build with non-buggy compilers
Chris Lattner [Tue, 1 May 2007 07:03:37 +0000 (07:03 +0000)]
fix build with non-buggy compilers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36621 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agohandle function-level forward references, read binops.
Chris Lattner [Tue, 1 May 2007 07:01:57 +0000 (07:01 +0000)]
handle function-level forward references, read binops.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36620 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoA bit of feedback from Chris that I missed; error rather than asserting.
Nate Begeman [Tue, 1 May 2007 06:08:36 +0000 (06:08 +0000)]
A bit of feedback from Chris that I missed; error rather than asserting.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36619 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agollvm bug #1350, parts 1, 2, and 3.
Nate Begeman [Tue, 1 May 2007 05:57:02 +0000 (05:57 +0000)]
llvm bug #1350, parts 1, 2, and 3.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36618 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoimplement materializeModule, force deallocation of vector memory when we
Chris Lattner [Tue, 1 May 2007 05:52:21 +0000 (05:52 +0000)]
implement materializeModule, force deallocation of vector memory when we
are done with them, start implementing ParseFunctionBody

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36617 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoseveral bitfixes to JumpToBit
Chris Lattner [Tue, 1 May 2007 05:51:32 +0000 (05:51 +0000)]
several bitfixes to JumpToBit

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36616 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoThe stream to read from is now an ivar
Chris Lattner [Tue, 1 May 2007 05:01:34 +0000 (05:01 +0000)]
The stream to read from is now an ivar

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36615 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoimplement scafolding for lazy deserialization of function bodies
Chris Lattner [Tue, 1 May 2007 04:59:48 +0000 (04:59 +0000)]
implement scafolding for lazy deserialization of function bodies

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36614 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd JumpToBit, an explicit init method, and a default ctor.
Chris Lattner [Tue, 1 May 2007 04:59:06 +0000 (04:59 +0000)]
add JumpToBit, an explicit init method, and a default ctor.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36613 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoSplit target dependent test portions to target-specific directories.
Reid Spencer [Tue, 1 May 2007 02:56:15 +0000 (02:56 +0000)]
Split target dependent test portions to target-specific directories.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36612 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd phi
Chris Lattner [Tue, 1 May 2007 02:43:46 +0000 (02:43 +0000)]
add phi

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36611 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agowrite the symbol table for function bodies
Chris Lattner [Tue, 1 May 2007 02:14:57 +0000 (02:14 +0000)]
write the symbol table for function bodies

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36610 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoencode all of the instructions.
Chris Lattner [Tue, 1 May 2007 02:13:26 +0000 (02:13 +0000)]
encode all of the instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36609 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoadd missing opcode.
Chris Lattner [Tue, 1 May 2007 02:12:05 +0000 (02:12 +0000)]
add missing opcode.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36608 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoUnder normal circumstances, when a frame pointer is not required, we reserve
Evan Cheng [Tue, 1 May 2007 00:52:08 +0000 (00:52 +0000)]
Under normal circumstances, when a frame pointer is not required, we reserve
argument space for call sites in the function immediately on entry to the
current function. This eliminates the need for add/sub sp brackets around call
sites. However, this is not always a good idea. If the "call frame" is large and
the target load / store instructions have small immediate field to encode sp
offset, this can cause poor codegen. In the worst case, this can make it
impossible to scavenge a register if the reserved spill slot is pushed too far
apart from sp / fp.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36607 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoAdded hook hasReservedCallFrame(). It returns true if the call frame is
Evan Cheng [Tue, 1 May 2007 00:47:46 +0000 (00:47 +0000)]
Added hook hasReservedCallFrame(). It returns true if the call frame is
included as part of the stack frame.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36606 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoTest a dag combiner crasher.
Evan Cheng [Tue, 1 May 2007 00:40:38 +0000 (00:40 +0000)]
Test a dag combiner crasher.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36605 91177308-0d34-0410-b5e6-96231b3b80d8

17 years ago* Only turn a load to UNDEF if all of its outputs have no uses (indexed loads
Evan Cheng [Tue, 1 May 2007 00:38:21 +0000 (00:38 +0000)]
* Only turn a load to UNDEF if all of its outputs have no uses (indexed loads
  produce two results.)
* Do not touch volatile loads.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36604 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoImplement review feedback.
Christopher Lamb [Mon, 30 Apr 2007 23:54:10 +0000 (23:54 +0000)]
Implement review feedback.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36603 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoFix PR1228 and CodeGen/Generic/2007-04-30-LandingPadBranchFolding.ll
Chris Lattner [Mon, 30 Apr 2007 23:35:00 +0000 (23:35 +0000)]
Fix PR1228 and CodeGen/Generic/2007-04-30-LandingPadBranchFolding.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36602 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agotestcase for PR1228
Chris Lattner [Mon, 30 Apr 2007 23:34:46 +0000 (23:34 +0000)]
testcase for PR1228

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36601 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoprint isLandingPad() for MBBs
Chris Lattner [Mon, 30 Apr 2007 23:12:53 +0000 (23:12 +0000)]
print isLandingPad() for MBBs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36600 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agoContinue refactoring inline asm code. If there is an earlyclobber output
Chris Lattner [Mon, 30 Apr 2007 21:11:17 +0000 (21:11 +0000)]
Continue refactoring inline asm code.  If there is an earlyclobber output
register, preallocate all input registers and the early clobbered output.

This fixes PR1357 and CodeGen/PowerPC/2007-04-30-InlineAsmEarlyClobber.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36599 91177308-0d34-0410-b5e6-96231b3b80d8

17 years agotestcase for PR1357
Chris Lattner [Mon, 30 Apr 2007 21:10:13 +0000 (21:10 +0000)]
testcase for PR1357

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36598 91177308-0d34-0410-b5e6-96231b3b80d8