oota-llvm.git
17 years ago- Move getPhysicalRegisterRegClass() from ScheduleDAG to MRegisterInfo.
Evan Cheng [Wed, 26 Sep 2007 21:36:17 +0000 (21:36 +0000)]
- Move getPhysicalRegisterRegClass() from ScheduleDAG to MRegisterInfo.
- Added ability to emit cross class register copies to the BBRU scheduler.
- More aggressive backtracking.

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

17 years agoWhitespace cleanup.
Neil Booth [Wed, 26 Sep 2007 21:35:05 +0000 (21:35 +0000)]
Whitespace cleanup.

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

17 years agoWhitespace and compiler warning cleanup.
Neil Booth [Wed, 26 Sep 2007 21:33:42 +0000 (21:33 +0000)]
Whitespace and compiler warning cleanup.

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

17 years ago- Added MRegisterInfo::getCrossCopyRegClass() hook. For register classes where reg...
Evan Cheng [Wed, 26 Sep 2007 21:31:07 +0000 (21:31 +0000)]
- Added MRegisterInfo::getCrossCopyRegClass() hook. For register classes where reg to reg copies are not possible, this returns another register class which registers in the specified register class can be copied to (and copy back from).
- X86 copyRegToReg() now supports copying between EFLAGS and GR32 / GR64 registers.

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

17 years agoSome assemblers do not recognize aliases pushfd, pushfq, popfd, and popfq. Just emit...
Evan Cheng [Wed, 26 Sep 2007 21:28:00 +0000 (21:28 +0000)]
Some assemblers do not recognize aliases pushfd, pushfq, popfd, and popfq. Just emit them as pushf and popf.

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

17 years agoModernize fabs.ll, add long double. Add tests
Dale Johannesen [Wed, 26 Sep 2007 21:12:10 +0000 (21:12 +0000)]
Modernize fabs.ll, add long double.  Add tests
for direct codegen of fsin/fcos.

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

17 years agoEnable codegen for long double abs, sin, cos
Dale Johannesen [Wed, 26 Sep 2007 21:10:55 +0000 (21:10 +0000)]
Enable codegen for long double abs, sin, cos

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

17 years agoAdded C and Ocaml bindings for functions, basic blocks, and
Gordon Henriksen [Wed, 26 Sep 2007 20:56:12 +0000 (20:56 +0000)]
Added C and Ocaml bindings for functions, basic blocks, and
instruction creation. No support yet for instruction introspection.

Also eliminated allocas from the Ocaml bindings for portability,
and avoided unnecessary casts.

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

17 years agoFix f80 UNDEF.
Dale Johannesen [Wed, 26 Sep 2007 17:26:49 +0000 (17:26 +0000)]
Fix f80 UNDEF.

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

17 years agoX86 -> X86-32 in appropriate places.
Duncan Sands [Wed, 26 Sep 2007 16:24:52 +0000 (16:24 +0000)]
X86 -> X86-32 in appropriate places.

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

17 years agoVarious cleanups. Especially, EH is turned on by default!
Duncan Sands [Wed, 26 Sep 2007 15:59:54 +0000 (15:59 +0000)]
Various cleanups.  Especially, EH is turned on by default!

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

17 years agook ok we get it. CBE and vectors don't like each other yet.
Chris Lattner [Wed, 26 Sep 2007 15:50:21 +0000 (15:50 +0000)]
ok ok we get it.  CBE and vectors don't like each other yet.

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

17 years agobe less redundantly redundant.
Chris Lattner [Wed, 26 Sep 2007 15:48:33 +0000 (15:48 +0000)]
be less redundantly redundant.

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

17 years agoTest the C front-end, not the C++ front-end.
Duncan Sands [Wed, 26 Sep 2007 07:28:20 +0000 (07:28 +0000)]
Test the C front-end, not the C++ front-end.

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

17 years agomake old crappy browsers produce less crappy output :)
Chris Lattner [Wed, 26 Sep 2007 06:38:59 +0000 (06:38 +0000)]
make old crappy browsers produce less crappy output :)

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

17 years agoTypos: POPQ -> POPFQ, POPD -> POPFD.
Evan Cheng [Wed, 26 Sep 2007 06:38:29 +0000 (06:38 +0000)]
Typos: POPQ -> POPFQ, POPD -> POPFD.

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

17 years agomove PR1160 here.
Chris Lattner [Wed, 26 Sep 2007 06:29:31 +0000 (06:29 +0000)]
move PR1160 here.

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

17 years agoAllow copyRegToReg to emit cross register classes copies.
Evan Cheng [Wed, 26 Sep 2007 06:25:56 +0000 (06:25 +0000)]
Allow copyRegToReg to emit cross register classes copies.
Tested with "make check"!

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

17 years agomove PR1264 here.
Chris Lattner [Wed, 26 Sep 2007 06:15:48 +0000 (06:15 +0000)]
move PR1264 here.

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

17 years agonoone uses etags. Connected to PR1601
Chris Lattner [Wed, 26 Sep 2007 06:10:47 +0000 (06:10 +0000)]
noone uses etags.  Connected to PR1601

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

17 years agowe support attribute(noinline) now :)
Chris Lattner [Wed, 26 Sep 2007 06:04:15 +0000 (06:04 +0000)]
we support attribute(noinline) now :)

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

17 years agoupdate bugs list
Chris Lattner [Wed, 26 Sep 2007 06:01:35 +0000 (06:01 +0000)]
update bugs list

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

17 years agonow with more prose.
Chris Lattner [Wed, 26 Sep 2007 05:44:21 +0000 (05:44 +0000)]
now with more prose.

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

17 years agoTest that local variables are aligned as the user requested.
Duncan Sands [Wed, 26 Sep 2007 04:04:29 +0000 (04:04 +0000)]
Test that local variables are aligned as the user requested.

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

17 years agoAdd pushf{d|q}, popf{d|q} to push and pop EFLAGS register.
Evan Cheng [Wed, 26 Sep 2007 01:29:06 +0000 (01:29 +0000)]
Add pushf{d|q}, popf{d|q} to push and pop EFLAGS register.

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

17 years agotranslateX86CC updates the last two operands.
Evan Cheng [Wed, 26 Sep 2007 00:45:55 +0000 (00:45 +0000)]
translateX86CC updates the last two operands.

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

17 years agoCorrectly restore stack pointer after realignment in main() on Cygwin/Mingw32
Anton Korobeynikov [Wed, 26 Sep 2007 00:13:34 +0000 (00:13 +0000)]
Correctly restore stack pointer after realignment in main() on Cygwin/Mingw32

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

17 years agoFix small bug in operator== for iterators
Daniel Berlin [Wed, 26 Sep 2007 00:11:59 +0000 (00:11 +0000)]
Fix small bug in operator== for iterators

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

17 years agoRemove no-longer-used variable.
Dale Johannesen [Tue, 25 Sep 2007 23:32:20 +0000 (23:32 +0000)]
Remove no-longer-used variable.

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

17 years agoMake APFloat->int conversions deterministic even in
Dale Johannesen [Tue, 25 Sep 2007 23:07:07 +0000 (23:07 +0000)]
Make APFloat->int conversions deterministic even in
cases with undefined behavior.

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

17 years agoexplain why not vector<bool>
Chris Lattner [Tue, 25 Sep 2007 22:37:50 +0000 (22:37 +0000)]
explain why not vector<bool>

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

17 years agoMissing load / store folding entries.
Evan Cheng [Tue, 25 Sep 2007 22:10:43 +0000 (22:10 +0000)]
Missing load / store folding entries.

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

17 years agoPartly revert invalid r41774
Anton Korobeynikov [Tue, 25 Sep 2007 21:52:30 +0000 (21:52 +0000)]
Partly revert invalid r41774

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

17 years agoGrammar fix.
Bill Wendling [Tue, 25 Sep 2007 20:45:10 +0000 (20:45 +0000)]
Grammar fix.

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

17 years agoMore explicit keywords.
Dan Gohman [Tue, 25 Sep 2007 20:27:06 +0000 (20:27 +0000)]
More explicit keywords.

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

17 years agoAdd a newline to the end of this file.
Duncan Sands [Tue, 25 Sep 2007 20:08:48 +0000 (20:08 +0000)]
Add a newline to the end of this file.

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

17 years agoFix a typo in a comment.
Dan Gohman [Tue, 25 Sep 2007 19:37:26 +0000 (19:37 +0000)]
Fix a typo in a comment.

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

17 years agoNew style x87 cmp instructions.
Evan Cheng [Tue, 25 Sep 2007 19:08:02 +0000 (19:08 +0000)]
New style x87 cmp instructions.

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

17 years agoHandle multiple induction variables.
Devang Patel [Tue, 25 Sep 2007 18:24:48 +0000 (18:24 +0000)]
Handle multiple induction variables.
This fixes PR714.

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

17 years agoWhen both x/y and x%y are needed (x and y both scalar integer), compute
Dan Gohman [Tue, 25 Sep 2007 18:23:27 +0000 (18:23 +0000)]
When both x/y and x%y are needed (x and y both scalar integer), compute
both results with a single div or idiv instruction. This uses new X86ISD
nodes for DIV and IDIV which are introduced during the legalize phase
so that the SelectionDAG's CSE can automatically eliminate redundant
computations.

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

17 years agoDo not reserve DOM check for GetElementPtrInst.
Devang Patel [Tue, 25 Sep 2007 17:55:50 +0000 (17:55 +0000)]
Do not reserve DOM check for GetElementPtrInst.

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

17 years agoSome tests for APFloat conversions.
Dale Johannesen [Tue, 25 Sep 2007 17:50:55 +0000 (17:50 +0000)]
Some tests for APFloat conversions.

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

17 years agoForgot to check in the changes. Fix test case so it doesn't break with any scheduling...
Evan Cheng [Tue, 25 Sep 2007 17:47:38 +0000 (17:47 +0000)]
Forgot to check in the changes. Fix test case so it doesn't break with any scheduling changes.

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

17 years agodoh..
Devang Patel [Tue, 25 Sep 2007 17:43:08 +0000 (17:43 +0000)]
doh..

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

17 years agoAdd transformation to update loop interation space. Now,
Devang Patel [Tue, 25 Sep 2007 17:31:19 +0000 (17:31 +0000)]
Add transformation to update loop interation space. Now,
for (i=A; i<N; i++) {
  if (i < X && i > Y)
    do_something();
}

is transformed into

U=min(N,X); L=max(A,Y);
for (i=L;i<U;i++)
  do_somethihg();

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

17 years agoFix long double<->shorter FP type conversions
Dale Johannesen [Tue, 25 Sep 2007 17:25:00 +0000 (17:25 +0000)]
Fix long double<->shorter FP type conversions
of zero, infinity, and NaNs.

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

17 years agoMove the setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand) and
Dan Gohman [Tue, 25 Sep 2007 15:10:49 +0000 (15:10 +0000)]
Move the setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand) and
the check to see if the assembler supports .loc from X86TargetLowering
into the superclass TargetLowering.

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

17 years agoFix spelling.
Duncan Sands [Tue, 25 Sep 2007 13:53:22 +0000 (13:53 +0000)]
Fix spelling.

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

17 years agoAdd missing end-of-file newlines.
Duncan Sands [Tue, 25 Sep 2007 07:10:01 +0000 (07:10 +0000)]
Add missing end-of-file newlines.

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

17 years agoFill in the sections about my contributions.
Owen Anderson [Tue, 25 Sep 2007 02:10:58 +0000 (02:10 +0000)]
Fill in the sections about my contributions.

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

17 years agoAdded support for new condition code modeling scheme (i.e. physical register dependen...
Evan Cheng [Tue, 25 Sep 2007 01:57:46 +0000 (01:57 +0000)]
Added support for new condition code modeling scheme (i.e. physical register dependency). These are a bunch of instructions that are duplicated so the x86 backend can support both the old and new schemes at the same time. They will be deleted after
all the kinks are worked out.

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

17 years agoAdded major new capabilities to scheduler (only BURR for now) to support physical...
Evan Cheng [Tue, 25 Sep 2007 01:54:36 +0000 (01:54 +0000)]
Added major new capabilities to scheduler (only BURR for now) to support physical register dependency. The BURR scheduler can now backtrace and duplicate instructions in order to avoid "expensive / impossible to copy" values (e.g. status flag EFLAGS for x86) from being clobbered.

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

17 years agoNew temporary option -new-cc-modeling-scheme to test the new cc modeling scheme.
Evan Cheng [Tue, 25 Sep 2007 01:50:04 +0000 (01:50 +0000)]
New temporary option -new-cc-modeling-scheme to test the new cc modeling scheme.

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

17 years agoRename keyword "modify" -> "implicit".
Evan Cheng [Tue, 25 Sep 2007 01:48:59 +0000 (01:48 +0000)]
Rename keyword "modify" -> "implicit".

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

17 years agoWhen mixing SSE and x87 codegen, it's possible to
Dale Johannesen [Mon, 24 Sep 2007 22:52:39 +0000 (22:52 +0000)]
When mixing SSE and x87 codegen, it's possible to
have situations where an SSE instruction turns into
multiple blocks, with the live range of an x87
register crossing them.  To do this correctly make
sure we examine all blocks when inserting
FP_REG_KILL.  PR 1697.  (This was exposed by my
fix for PR 1681, but the same thing could happen
mixing x87 long double with SSE.)

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

17 years agoDon't execute dump unless NDEBUG isn't defined.
Bill Wendling [Mon, 24 Sep 2007 22:43:48 +0000 (22:43 +0000)]
Don't execute dump unless NDEBUG isn't defined.

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

17 years agoComment fixups
Daniel Berlin [Mon, 24 Sep 2007 22:20:45 +0000 (22:20 +0000)]
Comment fixups

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

17 years agoAdd support on x86 for having Legalize lower ISD::LOCATION to ISD::DEBUG_LOC
Dan Gohman [Mon, 24 Sep 2007 21:54:14 +0000 (21:54 +0000)]
Add support on x86 for having Legalize lower ISD::LOCATION to ISD::DEBUG_LOC
instead of ISD::LABEL with a manual .debug_line entry when the assembler
supports .file and .loc directives.

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

17 years agoDon't emit .debug_line header data if there aren't any lines to put in it,
Dan Gohman [Mon, 24 Sep 2007 21:43:52 +0000 (21:43 +0000)]
Don't emit .debug_line header data if there aren't any lines to put in it,
such as will happen when .loc directives are used.

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

17 years agoMove the Asm->EOL() call for EmitDebugARanges outside the #ifdef for
Dan Gohman [Mon, 24 Sep 2007 21:36:21 +0000 (21:36 +0000)]
Move the Asm->EOL() call for EmitDebugARanges outside the #ifdef for
consistency with the other currently empty sections.

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

17 years agoAdd support for emitting .file directives to set up file numbers for
Dan Gohman [Mon, 24 Sep 2007 21:32:18 +0000 (21:32 +0000)]
Add support for emitting .file directives to set up file numbers for
use with .loc directives.

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

17 years agoMerge hasDotLoc and hasDotFile into hasDotLocAndDotFile since .loc and .file
Dan Gohman [Mon, 24 Sep 2007 21:09:53 +0000 (21:09 +0000)]
Merge hasDotLoc and hasDotFile into hasDotLocAndDotFile since .loc and .file
aren't really usable without each other.

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

17 years agofloat->int conversion rounds toward 0. Duh.
Dale Johannesen [Mon, 24 Sep 2007 21:06:09 +0000 (21:06 +0000)]
float->int conversion rounds toward 0.  Duh.
Fixes PR1698.

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

17 years agoAdd a routine for emitting .file directives, for setting up
Dan Gohman [Mon, 24 Sep 2007 20:58:13 +0000 (20:58 +0000)]
Add a routine for emitting .file directives, for setting up
file numbers to use with .loc directives.

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

17 years agoAdded "LoadEffective" pattern to handle stack locations.
Bruno Cardoso Lopes [Mon, 24 Sep 2007 20:15:11 +0000 (20:15 +0000)]
Added "LoadEffective" pattern to handle stack locations.
Fixed some comments

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

17 years ago Do not promote null values because it may be unsafe to do so.
Devang Patel [Mon, 24 Sep 2007 20:02:42 +0000 (20:02 +0000)]
 Do not promote null values because it may be unsafe to do so.

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

17 years agoImplement offline variable substitution in order to reduce memory
Daniel Berlin [Mon, 24 Sep 2007 19:45:49 +0000 (19:45 +0000)]
Implement offline variable substitution in order to reduce memory
and time usage.
Fixup operator == to make this work, and add a resize method to DenseMap
so we can resize our hashtable once we know how big it should be.

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

17 years agoFix the syntax for the .loc directive in preparation for using it.
Dan Gohman [Mon, 24 Sep 2007 19:25:06 +0000 (19:25 +0000)]
Fix the syntax for the .loc directive in preparation for using it.

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

17 years agoAdd section on bit containers.
Daniel Berlin [Mon, 24 Sep 2007 17:52:25 +0000 (17:52 +0000)]
Add section on bit containers.
(Not the most well written stuff in the universe :P)

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

17 years agoXFAIL for llvm-gcc4.0
Tanya Lattner [Mon, 24 Sep 2007 17:14:53 +0000 (17:14 +0000)]
XFAIL for llvm-gcc4.0

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

17 years agoThe code that used the StartLabelId label was removed, so remove the
Dan Gohman [Mon, 24 Sep 2007 16:44:26 +0000 (16:44 +0000)]
The code that used the StartLabelId label was removed, so remove the
code that creates the label too.

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

17 years agoUse the correct result value type instead of using getValueType(0)
Dan Gohman [Mon, 24 Sep 2007 15:54:53 +0000 (15:54 +0000)]
Use the correct result value type instead of using getValueType(0)
in ExpandEXTRACT_VECTOR_ELT and SplitVectorOp. This fixes an abort
in the included testcase.

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

17 years agoFix a typo in a comment.
Dan Gohman [Mon, 24 Sep 2007 15:50:11 +0000 (15:50 +0000)]
Fix a typo in a comment.

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

17 years agoexplicit keywords.
Dan Gohman [Mon, 24 Sep 2007 15:48:49 +0000 (15:48 +0000)]
explicit keywords.

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

17 years agoRemove an unnecessary static_cast.
Dan Gohman [Mon, 24 Sep 2007 15:46:02 +0000 (15:46 +0000)]
Remove an unnecessary static_cast.

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

17 years agoclaim that "st" is from the 80-bit register file. This causes x87-using inline
Chris Lattner [Mon, 24 Sep 2007 05:27:37 +0000 (05:27 +0000)]
claim that "st" is from the 80-bit register file.  This causes x87-using inline
asm to die with:

ScheduleDAG.cpp:269: failed assertion `false && "Couldn't find the register class"'

instead of:
failed assertion `RegMap->getRegClass(VReg) == RC && "Register class of operand and regclass of use don't agree!"'

yay.

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

17 years agoWhen emitting .set directives, make sure the EH and Debug labels can't conflict.
Chris Lattner [Mon, 24 Sep 2007 03:35:37 +0000 (03:35 +0000)]
When emitting .set directives, make sure the EH and Debug labels can't conflict.

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

17 years agoFix typo.
Owen Anderson [Mon, 24 Sep 2007 02:33:22 +0000 (02:33 +0000)]
Fix typo.

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

17 years agoMerge significant portions of the DomTree and PostDomTree implementations.
Owen Anderson [Mon, 24 Sep 2007 02:29:29 +0000 (02:29 +0000)]
Merge significant portions of the DomTree and PostDomTree implementations.
The two remaining unmerged parts are DFSPass, and the Calculate().

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

17 years agoJust use APFloat for const / const. Fixes
Dale Johannesen [Mon, 24 Sep 2007 00:32:45 +0000 (00:32 +0000)]
Just use APFloat for const / const.  Fixes
-1. / -0.

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

17 years agoFactor the calculation details for PostDomTree out of PostDominators.cpp and
Owen Anderson [Sun, 23 Sep 2007 22:21:00 +0000 (22:21 +0000)]
Factor the calculation details for PostDomTree out of PostDominators.cpp and
into a separate header file.

Next step: merging PostDominatorCalculation.h with DominatorCalculation.h.

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

17 years agoMove DFSPass back down into DominatorTree. I need to figure out what the difference...
Owen Anderson [Sun, 23 Sep 2007 22:16:38 +0000 (22:16 +0000)]
Move DFSPass back down into DominatorTree.  I need to figure out what the difference is between it
and the PostDomTree version first.

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

17 years agoFix header.
Owen Anderson [Sun, 23 Sep 2007 21:32:55 +0000 (21:32 +0000)]
Fix header.

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

17 years agoFactor the dominator tree calculation details out into DominatorCalculation.h. This
Owen Anderson [Sun, 23 Sep 2007 21:31:44 +0000 (21:31 +0000)]
Factor the dominator tree calculation details out into DominatorCalculation.h.  This
change is not useful in and of itself, but it lays the groundwork for combining
the dominator and postdominator implementations.

Also, factor a few methods that are common to DominatorTree and PostDominatorTree
into DominatorTreeBase.  Again, this will make merging the two calculation methods
simpler in the future.

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

17 years agoImplementation of +sse -sse2 has changed; add
Dale Johannesen [Sun, 23 Sep 2007 14:58:14 +0000 (14:58 +0000)]
Implementation of +sse -sse2 has changed; add
-sse to preserve intent of this test.

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

17 years agoFix PR 1681. When X86 target uses +sse -sse2,
Dale Johannesen [Sun, 23 Sep 2007 14:52:20 +0000 (14:52 +0000)]
Fix PR 1681.  When X86 target uses +sse -sse2,
keep f32 in SSE registers and f64 in x87.  This
is effectively a new codegen mode.
Change addLegalFPImmediate to permit float and
double variants to do different things.
Adjust callers.

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

17 years agoFix srcdir <> objdir builds with ocaml 2.10. Downrev versions don't care whether
Gordon Henriksen [Sun, 23 Sep 2007 13:37:44 +0000 (13:37 +0000)]
Fix srcdir <> objdir builds with ocaml 2.10. Downrev versions don't care whether
'dir' exists in 'ocamldep -I dir ...', but recent ones demand that it actually
exists.

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

17 years agofix syntax
Chris Lattner [Sat, 22 Sep 2007 23:41:15 +0000 (23:41 +0000)]
fix syntax

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

17 years agoRegenerate.
Gordon Henriksen [Sat, 22 Sep 2007 21:36:59 +0000 (21:36 +0000)]
Regenerate.

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

17 years agoFix for srcdir <> objdir builds.
Gordon Henriksen [Sat, 22 Sep 2007 21:36:22 +0000 (21:36 +0000)]
Fix for srcdir <> objdir builds.

Thanks Bill.

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

17 years agoFix PR1679, by printing GEP indices as signed values instead of unsigned.
Chris Lattner [Sat, 22 Sep 2007 20:16:48 +0000 (20:16 +0000)]
Fix PR1679, by printing GEP indices as signed values instead of unsigned.

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 10:17:08 +0000 (10:17 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 10:13:39 +0000 (10:13 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 10:07:00 +0000 (10:07 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 10:03:25 +0000 (10:03 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 09:56:28 +0000 (09:56 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 09:54:47 +0000 (09:54 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 09:39:19 +0000 (09:39 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 09:23:55 +0000 (09:23 +0000)]
Validation fixes

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

17 years agoValidation fixes
Bill Wendling [Sat, 22 Sep 2007 09:20:07 +0000 (09:20 +0000)]
Validation fixes

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