llvm/test
Chris Lattner 86ca3cacc5 In SDISel, for targets that support FORMAL_ARGUMENTS nodes, lower this
node as soon as we create it in SDISel.  Previously we would lower it in
legalize.  The problem with this is that it only exposes the argument
loads implied by FORMAL_ARGUMENTs after legalize, so that only dag combine 2
can hack on them.  This causes us to miss some optimizations because 
datatype expansion also happens here.

Exposing the loads early allows us to do optimizations on them.  For example
we now compile arg-cast.ll to:

_foo:
	movl	$2147483647, %eax
	andl	8(%esp), %eax
	ret

where we previously produced:

_foo:
	subl	$12, %esp
	movsd	16(%esp), %xmm0
	movsd	%xmm0, (%esp)
	movl	$2147483647, %eax
	andl	4(%esp), %eax
	addl	$12, %esp
	ret

It might also make sense to do this for ISD::CALL nodes, which have implicit
stores on many targets.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47054 91177308-0d34-0410-b5e6-96231b3b80d8
2008-02-13 07:39:09 +00:00
..
Analysis Now that ScalarEvolution::print writes to the correct stream, there is 2008-02-12 15:12:40 +00:00
Archive
Assembler Two occurrences on one line count as one... 2008-01-11 21:46:24 +00:00
Bindings/Ocaml Fixing a bug creating floating point constants of type other 2008-02-02 01:07:50 +00:00
Bitcode
BugPoint
C++Frontend This should also work on x86 now. 2008-02-05 00:25:31 +00:00
CFrontend Test case for annotate builtin. 2008-02-12 07:46:33 +00:00
CodeGen In SDISel, for targets that support FORMAL_ARGUMENTS nodes, lower this 2008-02-13 07:39:09 +00:00
DebugInfo Accept getelementptr starting at GV with all 0 indices as a 2008-01-30 19:00:21 +00:00
ExecutionEngine
Feature
FrontendAda Testcase for gimplify_expr crash caused by an 2008-01-15 19:55:41 +00:00
FrontendObjC
Integer
lib
Linker
Other
Scripts
TableGen Rename MRegisterInfo to TargetRegisterInfo. 2008-02-10 18:45:23 +00:00
Transforms Add test for PR1996. (This is my first time adding a test for a 2008-02-13 06:55:57 +00:00
Verifier update this test to pass with duncan's change. 2008-01-22 05:31:58 +00:00
Makefile
Makefile.tests
TestRunner.sh