llvm-6502/lib/CodeGen/SelectionDAG
Chris Lattner 1329cb8d89 Infer alignment of loads and increase their alignment when we can tell they are
from the stack.  This allows us to compile stack-align.ll to:

_test:
	movsd	LCPI1_0, %xmm0
	movapd	%xmm0, %xmm1
***	andpd	4(%esp), %xmm1
	andpd	_G, %xmm0
	addsd	%xmm1, %xmm0
	movl	20(%esp), %eax
	movsd	%xmm0, (%eax)
	ret

instead of:

_test:
	movsd	LCPI1_0, %xmm0
**	movsd	4(%esp), %xmm1
**	andpd	%xmm0, %xmm1
	andpd	_G, %xmm0
	addsd	%xmm1, %xmm0
	movl	20(%esp), %eax
	movsd	%xmm0, (%eax)
	ret



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46401 91177308-0d34-0410-b5e6-96231b3b80d8
2008-01-26 19:45:50 +00:00
..
CallingConvLower.cpp
DAGCombiner.cpp Infer alignment of loads and increase their alignment when we can tell they are 2008-01-26 19:45:50 +00:00
LegalizeDAG.cpp
LegalizeTypes.cpp
LegalizeTypes.h
LegalizeTypesExpand.cpp
LegalizeTypesPromote.cpp
LegalizeTypesScalarize.cpp
LegalizeTypesSplit.cpp
Makefile
ScheduleDAG.cpp
ScheduleDAGList.cpp
ScheduleDAGRRList.cpp
SelectionDAG.cpp don't bother making x&-1 only to simplify it in dag combine. This commonly occurs expanding i64 ops. 2008-01-26 01:05:42 +00:00
SelectionDAGISel.cpp fix long lines. 2008-01-25 17:24:52 +00:00
SelectionDAGPrinter.cpp include alignment and volatility information in -view-*-dags output 2008-01-25 06:40:45 +00:00
TargetLowering.cpp