oota-llvm.git
15 years agoHandle implicit zext in a better way. Shamelessly stolen from x86 backend.
Anton Korobeynikov [Sun, 3 May 2009 15:50:18 +0000 (15:50 +0000)]
Handle implicit zext in a better way. Shamelessly stolen from x86 backend.
Thanks for Dan Gohman for suggestion!

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

15 years agoRegenerate
Anton Korobeynikov [Sun, 3 May 2009 13:42:23 +0000 (13:42 +0000)]
Regenerate

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

15 years agoFix typo
Anton Korobeynikov [Sun, 3 May 2009 13:19:57 +0000 (13:19 +0000)]
Fix typo

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

15 years agoUpdate due to mainline API change
Anton Korobeynikov [Sun, 3 May 2009 13:19:42 +0000 (13:19 +0000)]
Update due to mainline API change

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

15 years agoAdd TODO list :)
Anton Korobeynikov [Sun, 3 May 2009 13:19:24 +0000 (13:19 +0000)]
Add TODO list :)

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

15 years agoMake handling of conditional stuff much more straightforward
Anton Korobeynikov [Sun, 3 May 2009 13:19:09 +0000 (13:19 +0000)]
Make handling of conditional stuff much more straightforward

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

15 years agoTemporary disable imm patterns for cmp. Actually, all cmp-related stuff (select_cc...
Anton Korobeynikov [Sun, 3 May 2009 13:18:50 +0000 (13:18 +0000)]
Temporary disable imm patterns for cmp. Actually, all cmp-related stuff (select_cc, setcc, br_cc). needs to be rethought

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

15 years agoExpand divisions into libcalls
Anton Korobeynikov [Sun, 3 May 2009 13:18:33 +0000 (13:18 +0000)]
Expand divisions into libcalls

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

15 years agoProperly handle sdiv / udiv / srem / urem libcalls
Anton Korobeynikov [Sun, 3 May 2009 13:18:16 +0000 (13:18 +0000)]
Properly handle sdiv / udiv / srem / urem libcalls

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

15 years agoCustom lower SIGN_EXTEND
Anton Korobeynikov [Sun, 3 May 2009 13:17:49 +0000 (13:17 +0000)]
Custom lower SIGN_EXTEND

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

15 years agoSome eye-candy
Anton Korobeynikov [Sun, 3 May 2009 13:17:31 +0000 (13:17 +0000)]
Some eye-candy

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

15 years agoPrint function header / footer
Anton Korobeynikov [Sun, 3 May 2009 13:17:11 +0000 (13:17 +0000)]
Print function header / footer

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

15 years agoFix printing: je => jeq
Anton Korobeynikov [Sun, 3 May 2009 13:16:54 +0000 (13:16 +0000)]
Fix printing: je => jeq

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

15 years agoAdd 8bit shifts
Anton Korobeynikov [Sun, 3 May 2009 13:16:37 +0000 (13:16 +0000)]
Add 8bit shifts

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

15 years agoHandle logical shift right (at least I hope so :) )
Anton Korobeynikov [Sun, 3 May 2009 13:16:17 +0000 (13:16 +0000)]
Handle logical shift right (at least I hope so :) )

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

15 years agoHandle anyext
Anton Korobeynikov [Sun, 3 May 2009 13:15:57 +0000 (13:15 +0000)]
Handle anyext

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

15 years agoExpand all sorts of indirect branches
Anton Korobeynikov [Sun, 3 May 2009 13:15:40 +0000 (13:15 +0000)]
Expand all sorts of indirect branches

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

15 years agoAdd InsertBranch() hook for tail mergeing
Anton Korobeynikov [Sun, 3 May 2009 13:15:22 +0000 (13:15 +0000)]
Add InsertBranch() hook for tail mergeing

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

15 years agoImplement bswap
Anton Korobeynikov [Sun, 3 May 2009 13:15:03 +0000 (13:15 +0000)]
Implement bswap

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

15 years agoProperly handle ExternalSymbol's
Anton Korobeynikov [Sun, 3 May 2009 13:14:46 +0000 (13:14 +0000)]
Properly handle ExternalSymbol's

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

15 years agoExpand muls (all mulls!) to libcalls for now
Anton Korobeynikov [Sun, 3 May 2009 13:14:25 +0000 (13:14 +0000)]
Expand muls (all mulls!) to libcalls for now

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

15 years agoProper name 16 bit libcalls
Anton Korobeynikov [Sun, 3 May 2009 13:14:08 +0000 (13:14 +0000)]
Proper name 16 bit libcalls

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

15 years agoAdd libcall expansion for 16 and 128 bit muls
Anton Korobeynikov [Sun, 3 May 2009 13:13:51 +0000 (13:13 +0000)]
Add libcall expansion for 16 and 128 bit muls

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

15 years agoProvide addc and subc
Anton Korobeynikov [Sun, 3 May 2009 13:13:34 +0000 (13:13 +0000)]
Provide addc and subc

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

15 years agoAdd left shift
Anton Korobeynikov [Sun, 3 May 2009 13:13:17 +0000 (13:13 +0000)]
Add left shift

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

15 years agoAdd direct branch
Anton Korobeynikov [Sun, 3 May 2009 13:12:58 +0000 (13:12 +0000)]
Add direct branch

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

15 years agoIt's error-prone to maintain two separate variants of asmprinting stuff, one of which...
Anton Korobeynikov [Sun, 3 May 2009 13:12:37 +0000 (13:12 +0000)]
It's error-prone to maintain two separate variants of asmprinting stuff, one of which is even used. Drop second (aka 'intel') variant of operands. It can be added later, if needed.

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

15 years agoLower select with custom inserted and make condjumps generic
Anton Korobeynikov [Sun, 3 May 2009 13:12:23 +0000 (13:12 +0000)]
Lower select with custom inserted and make condjumps generic

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

15 years agoAdd first draft for conditions, conditional branches, etc
Anton Korobeynikov [Sun, 3 May 2009 13:12:06 +0000 (13:12 +0000)]
Add first draft for conditions, conditional branches, etc

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

15 years agoHanle i8 returns
Anton Korobeynikov [Sun, 3 May 2009 13:11:48 +0000 (13:11 +0000)]
Hanle i8 returns

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

15 years agoSmall tweaking
Anton Korobeynikov [Sun, 3 May 2009 13:11:35 +0000 (13:11 +0000)]
Small tweaking

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

15 years agoAdd prologue/epilogue emission. Fix frame pointer handling.
Anton Korobeynikov [Sun, 3 May 2009 13:11:20 +0000 (13:11 +0000)]
Add prologue/epilogue emission. Fix frame pointer handling.

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

15 years agoAdd code for save/restore of callee-saved registers
Anton Korobeynikov [Sun, 3 May 2009 13:11:04 +0000 (13:11 +0000)]
Add code for save/restore of callee-saved registers

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

15 years agoTwo more hooks for RA and FP registers
Anton Korobeynikov [Sun, 3 May 2009 13:10:40 +0000 (13:10 +0000)]
Two more hooks for RA and FP registers

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

15 years agoProper handle loading of effective address of stack slot stuff
Anton Korobeynikov [Sun, 3 May 2009 13:10:26 +0000 (13:10 +0000)]
Proper handle loading of effective address of stack slot stuff

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

15 years agoMatch frame indexes
Anton Korobeynikov [Sun, 3 May 2009 13:10:11 +0000 (13:10 +0000)]
Match frame indexes

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

15 years agoFirst draft of stack slot loads / stores lowering
Anton Korobeynikov [Sun, 3 May 2009 13:09:57 +0000 (13:09 +0000)]
First draft of stack slot loads / stores lowering

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

15 years agoReverse order of memory arguments
Anton Korobeynikov [Sun, 3 May 2009 13:09:40 +0000 (13:09 +0000)]
Reverse order of memory arguments

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

15 years agoRemove bogus pattern
Anton Korobeynikov [Sun, 3 May 2009 13:09:24 +0000 (13:09 +0000)]
Remove bogus pattern

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

15 years agoCorrect asmprinting of memory operands
Anton Korobeynikov [Sun, 3 May 2009 13:09:10 +0000 (13:09 +0000)]
Correct asmprinting of memory operands

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

15 years agoMatch wrapper node for address
Anton Korobeynikov [Sun, 3 May 2009 13:08:51 +0000 (13:08 +0000)]
Match wrapper node for address

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

15 years agoAdd lowering for global address nodes. Not pretty efficient though.
Anton Korobeynikov [Sun, 3 May 2009 13:08:33 +0000 (13:08 +0000)]
Add lowering for global address nodes. Not pretty efficient though.

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

15 years agoSome early full call lowering draft for direct calls
Anton Korobeynikov [Sun, 3 May 2009 13:08:13 +0000 (13:08 +0000)]
Some early full call lowering draft for direct calls

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

15 years agoAdd call frame setup instruction elimination and lowerid for bunch of call-related...
Anton Korobeynikov [Sun, 3 May 2009 13:07:54 +0000 (13:07 +0000)]
Add call frame setup instruction elimination and lowerid for bunch of call-related stuff.

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

15 years agoAdd CALL lowering.
Anton Korobeynikov [Sun, 3 May 2009 13:07:31 +0000 (13:07 +0000)]
Add CALL lowering.

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

15 years agoAdd bunch of mem-whatever patterns
Anton Korobeynikov [Sun, 3 May 2009 13:07:10 +0000 (13:07 +0000)]
Add bunch of mem-whatever patterns

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

15 years agoAdd bunch of reg-mem inst patterns
Anton Korobeynikov [Sun, 3 May 2009 13:06:46 +0000 (13:06 +0000)]
Add bunch of reg-mem inst patterns

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

15 years agoAdd normal and trunc stores
Anton Korobeynikov [Sun, 3 May 2009 13:06:26 +0000 (13:06 +0000)]
Add normal and trunc stores

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

15 years agoBasic support for mem=>reg moves
Anton Korobeynikov [Sun, 3 May 2009 13:06:03 +0000 (13:06 +0000)]
Basic support for mem=>reg moves

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

15 years agoAdd 8-bit insts. zext behaviour is not modelled yet
Anton Korobeynikov [Sun, 3 May 2009 13:05:42 +0000 (13:05 +0000)]
Add 8-bit insts. zext behaviour is not modelled yet

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

15 years agoAdd 8-bit regclass and pattern for sext_inreg
Anton Korobeynikov [Sun, 3 May 2009 13:05:22 +0000 (13:05 +0000)]
Add 8-bit regclass and pattern for sext_inreg

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

15 years agoAdd pattern for OR
Anton Korobeynikov [Sun, 3 May 2009 13:05:00 +0000 (13:05 +0000)]
Add pattern for OR

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

15 years agoAdd reg-imm variants
Anton Korobeynikov [Sun, 3 May 2009 13:04:41 +0000 (13:04 +0000)]
Add reg-imm variants

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

15 years agoAdd hint to nop
Anton Korobeynikov [Sun, 3 May 2009 13:04:23 +0000 (13:04 +0000)]
Add hint to nop

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

15 years agoAdd more instructions
Anton Korobeynikov [Sun, 3 May 2009 13:04:06 +0000 (13:04 +0000)]
Add more instructions

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

15 years agoCleanup
Anton Korobeynikov [Sun, 3 May 2009 13:03:50 +0000 (13:03 +0000)]
Cleanup

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

15 years agoAdd dummy lowering for shifts
Anton Korobeynikov [Sun, 3 May 2009 13:03:33 +0000 (13:03 +0000)]
Add dummy lowering for shifts

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

15 years agoWe don't have any div at all - thus mark it as expensive
Anton Korobeynikov [Sun, 3 May 2009 13:03:14 +0000 (13:03 +0000)]
We don't have any div at all - thus mark it as expensive

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

15 years agoWe're not going to spend 100% of time in interrupts, do we? :)
Anton Korobeynikov [Sun, 3 May 2009 13:02:57 +0000 (13:02 +0000)]
We're not going to spend 100% of time in interrupts, do we? :)

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

15 years agoAdd simple reg-reg add.
Anton Korobeynikov [Sun, 3 May 2009 13:02:39 +0000 (13:02 +0000)]
Add simple reg-reg add.

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

15 years agogas uses lower letter for register names
Anton Korobeynikov [Sun, 3 May 2009 13:02:22 +0000 (13:02 +0000)]
gas uses lower letter for register names

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

15 years agoAdd code enough for emission of reg-reg and reg-imm moves. This allows us to compile...
Anton Korobeynikov [Sun, 3 May 2009 13:02:04 +0000 (13:02 +0000)]
Add code enough for emission of reg-reg and reg-imm moves. This allows us to compile "ret i16 0" properly!

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

15 years agoAdd function body printing routine
Anton Korobeynikov [Sun, 3 May 2009 13:01:41 +0000 (13:01 +0000)]
Add function body printing routine

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

15 years agoAdd 'msp430' target triple recognizer
Anton Korobeynikov [Sun, 3 May 2009 13:01:23 +0000 (13:01 +0000)]
Add 'msp430' target triple recognizer

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

15 years agoMake emit{Prologue,Epilogue}() noop for now
Anton Korobeynikov [Sun, 3 May 2009 13:01:04 +0000 (13:01 +0000)]
Make emit{Prologue,Epilogue}() noop for now

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

15 years agoAdd callee-saved regs & reg classes getter hooks
Anton Korobeynikov [Sun, 3 May 2009 13:00:46 +0000 (13:00 +0000)]
Add callee-saved regs & reg classes getter hooks

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

15 years agoAdd simple FP indicator for given function hook
Anton Korobeynikov [Sun, 3 May 2009 13:00:28 +0000 (13:00 +0000)]
Add simple FP indicator for given function hook

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

15 years agoProvide set of reserved registers
Anton Korobeynikov [Sun, 3 May 2009 13:00:11 +0000 (13:00 +0000)]
Provide set of reserved registers

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

15 years agoAdd proper ISD::RET lowering
Anton Korobeynikov [Sun, 3 May 2009 12:59:50 +0000 (12:59 +0000)]
Add proper ISD::RET lowering

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

15 years agoAdd first draft of MSP430 calling convention stuff and draft of ISD::FORMAL_ARGUMENTS...
Anton Korobeynikov [Sun, 3 May 2009 12:59:33 +0000 (12:59 +0000)]
Add first draft of MSP430 calling convention stuff and draft of ISD::FORMAL_ARGUMENTS node lowering.

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

15 years agoFix register names, fix register allocation order, handle frame pointer.
Anton Korobeynikov [Sun, 3 May 2009 12:59:16 +0000 (12:59 +0000)]
Fix register names, fix register allocation order, handle frame pointer.

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

15 years agoClearify the usage and add some debug stuff
Anton Korobeynikov [Sun, 3 May 2009 12:58:58 +0000 (12:58 +0000)]
Clearify the usage and add some debug stuff

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

15 years agoCleanup
Anton Korobeynikov [Sun, 3 May 2009 12:58:40 +0000 (12:58 +0000)]
Cleanup

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

15 years agoAdd cmake script. No idea whether it works or not :)
Anton Korobeynikov [Sun, 3 May 2009 12:58:22 +0000 (12:58 +0000)]
Add cmake script. No idea whether it works or not :)

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

15 years agoAdd a note
Anton Korobeynikov [Sun, 3 May 2009 12:58:05 +0000 (12:58 +0000)]
Add a note

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

15 years agoTypo
Anton Korobeynikov [Sun, 3 May 2009 12:57:47 +0000 (12:57 +0000)]
Typo

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

15 years agoDummy MSP430 backend
Anton Korobeynikov [Sun, 3 May 2009 12:57:15 +0000 (12:57 +0000)]
Dummy MSP430 backend

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

15 years ago-Move the DwarfWriter::ValidDebugInfo check to a static DIDescriptor::ValidDebugInfo
Argyrios Kyrtzidis [Sun, 3 May 2009 08:50:41 +0000 (08:50 +0000)]
-Move the DwarfWriter::ValidDebugInfo check to a static DIDescriptor::ValidDebugInfo
-Create DebugLocs without the need to have a DwarfWriter around

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

15 years agoRevert r70645 for now; it's causing a variety of regressions.
Dan Gohman [Sun, 3 May 2009 05:46:20 +0000 (05:46 +0000)]
Revert r70645 for now; it's causing a variety of regressions.

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

15 years agoRevert r70630. Go back to appending ".b" to internal globals when shrinking
Nick Lewycky [Sun, 3 May 2009 03:49:08 +0000 (03:49 +0000)]
Revert r70630. Go back to appending ".b" to internal globals when shrinking
them to bool.

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

15 years agoAdd an svn:ignore for unittests/VMCore.
Dan Gohman [Sat, 2 May 2009 21:20:51 +0000 (21:20 +0000)]
Add an svn:ignore for unittests/VMCore.

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

15 years agoConvert ScalarEvolution to use CallbackVH for its internal map. This
Dan Gohman [Sat, 2 May 2009 21:19:20 +0000 (21:19 +0000)]
Convert ScalarEvolution to use CallbackVH for its internal map. This
makes ScalarEvolution::deleteValueFromRecords, and it's code that
subtly needed to be called before ReplaceAllUsesWith, unnecessary.

It also makes ValueDeletionListener unnecessary.

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

15 years agoApply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me
Dan Gohman [Sat, 2 May 2009 21:10:48 +0000 (21:10 +0000)]
Apply Jeffrey Yasskin's CallbackVH patch, with minor tweaks from me
to make the copy constructor and destructor protected, and corresponding
adjustments to the unittests.

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

15 years agoInclude <limits.h> to get the definition of CHAR_BIT.
Dan Gohman [Sat, 2 May 2009 21:03:21 +0000 (21:03 +0000)]
Include <limits.h> to get the definition of CHAR_BIT.

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

15 years agoThe second argument to RecursivelyDeleteTriviallyDeadInstructions has
Dan Gohman [Sat, 2 May 2009 20:22:10 +0000 (20:22 +0000)]
The second argument to RecursivelyDeleteTriviallyDeadInstructions has
a default value, and will hopefully be going away soon.

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

15 years agoPreviously, RecursivelyDeleteDeadInstructions provided an option
Dan Gohman [Sat, 2 May 2009 18:29:22 +0000 (18:29 +0000)]
Previously, RecursivelyDeleteDeadInstructions provided an option
of returning a list of pointers to Values that are deleted. This was
unsafe, because the pointers in the list are, by nature of what
RecursivelyDeleteDeadInstructions does, always dangling. Replace this
with a simple callback mechanism. This may eventually be removed if
all clients can reasonably be expected to use CallbackVH.

Use this to factor out the dead-phi-cycle-elimination code from LSR
utility function, and generalize it to use the
RecursivelyDeleteTriviallyDeadInstructions utility function.

This makes LSR more aggressive about eliminating dead PHI cycles;
adjust tests to either be less trivial or to simply expect fewer
instructions.

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

15 years agoWhen ScalarEvolution is told to forget the trip count for a loop, have
Dan Gohman [Sat, 2 May 2009 17:43:35 +0000 (17:43 +0000)]
When ScalarEvolution is told to forget the trip count for a loop, have
it also forget any SCEVs associated with loop-header PHIs in the loop,
as they may be dependent on trip count information.

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

15 years agoTell ScalarEvolution that the loop is being deleted before actually
Dan Gohman [Sat, 2 May 2009 17:29:26 +0000 (17:29 +0000)]
Tell ScalarEvolution that the loop is being deleted before actually
deleting it.  This will let ScalarEvolution be more complete about
updating its records.

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

15 years agoDon't append ".b" to the names of globals that are being shrunk to booleans.
Nick Lewycky [Sat, 2 May 2009 16:21:50 +0000 (16:21 +0000)]
Don't append ".b" to the names of globals that are being shrunk to booleans.

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

15 years agoDon't split critical edges during the AddUsersIfInteresting phase
Dan Gohman [Sat, 2 May 2009 05:36:01 +0000 (05:36 +0000)]
Don't split critical edges during the AddUsersIfInteresting phase
of LSR. This makes the AddUsersIfInteresting phase of LSR a pure
analysis instead of a phase that potentially does CFG modifications.

The conditions where this code would actually perform a split are
rare, and in the cases where it actually would do a split the split
is usually undone by CodeGenPrepare, and in cases where splits
actually survive into codegen, they appear to hurt more often than
they help.

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

15 years agoAdd Base.td to svn:ignore.
Dan Gohman [Sat, 2 May 2009 01:29:12 +0000 (01:29 +0000)]
Add Base.td to svn:ignore.

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

15 years ago'The attached patch fixes an issue where llc -march=cpp fails with
Chris Lattner [Fri, 1 May 2009 23:54:26 +0000 (23:54 +0000)]
'The attached patch fixes an issue where llc -march=cpp fails with
"Invalid primitive type" on input containing the x86_fp80 type.'
Patch by Collin Winter!

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

15 years agoDrop the default assumption about alignment down to 2 bits from 3. This apparently
Chris Lattner [Fri, 1 May 2009 23:48:33 +0000 (23:48 +0000)]
Drop the default assumption about alignment down to 2 bits from 3.  This apparently
helps some problems on win32 platforms (PR4119)

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

15 years agoChange the description string of the LoopInfo pass.
Dan Gohman [Fri, 1 May 2009 21:58:05 +0000 (21:58 +0000)]
Change the description string of the LoopInfo pass.
"Construction" makes it sound like a pass that might
modify the CFG to construct natural loops.

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

15 years agoPrevent looping when DenseSet is abused.
Stuart Hastings [Fri, 1 May 2009 20:47:53 +0000 (20:47 +0000)]
Prevent looping when DenseSet is abused.

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

15 years agoHTML-escape '>' as '&gt;' in sample C++ code.
Misha Brukman [Fri, 1 May 2009 20:40:51 +0000 (20:40 +0000)]
HTML-escape '>' as '&gt;' in sample C++ code.

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

15 years agoAllow CONCAT_VECTORS nodes to be legal or have custom lowering for some targets.
Bob Wilson [Fri, 1 May 2009 17:55:32 +0000 (17:55 +0000)]
Allow CONCAT_VECTORS nodes to be legal or have custom lowering for some targets.
Changes to take advantage of this will come later.

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

15 years agoActually insert inserted instructions into the InsertedValues map.
Dan Gohman [Fri, 1 May 2009 17:13:31 +0000 (17:13 +0000)]
Actually insert inserted instructions into the InsertedValues map.

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

15 years agoAdd an accessor method to allow clients to test if a given expression
Dan Gohman [Fri, 1 May 2009 17:08:34 +0000 (17:08 +0000)]
Add an accessor method to allow clients to test if a given expression
is associated with a SCEV expansion.

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

15 years agoMake RequiresTypeConversion canonicalize the types before calling the
Dan Gohman [Fri, 1 May 2009 17:07:43 +0000 (17:07 +0000)]
Make RequiresTypeConversion canonicalize the types before calling the
target hooks canLosslesslyBitCastTo and isTruncateFree. This allows
targets to avoid worrying about handling all combinations of integer
and pointer types.

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