<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/test/CodeGen/PowerPC, branch release_27</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/test/CodeGen/PowerPC?h=release_27</id>
<link rel='self' href='https://git.amat.us/llvm/atom/test/CodeGen/PowerPC?h=release_27'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2010-02-28T20:36:49Z</updated>
<entry>
<title>add some random nounwinds.</title>
<updated>2010-02-28T20:36:49Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2010-02-28T20:36:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=f70cbb2d6a9d2783d581ef7b5fdefd1b305ce332'/>
<id>urn:sha1:f70cbb2d6a9d2783d581ef7b5fdefd1b305ce332</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97411 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use the right floating point load/store instructions in PPCInstrInfo::foldMemoryOperandImpl().</title>
<updated>2010-02-26T21:09:24Z</updated>
<author>
<name>Jakob Stoklund Olesen</name>
<email>stoklund@2pi.dk</email>
</author>
<published>2010-02-26T21:09:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=243296690ec78fc918762bd73896b09e26537f47'/>
<id>urn:sha1:243296690ec78fc918762bd73896b09e26537f47</id>
<content type='text'>
The PowerPC floating point registers can represent both f32 and f64 via the
two register classes F4RC and F8RC. F8RC is considered a subclass of F4RC to
allow cross-class coalescing. This coalescing only affects whether registers
are spilled as f32 or f64.

Spill slots must be accessed with load/store instructions corresponding to the
class of the spilled register. PPCInstrInfo::foldMemoryOperandImpl was looking
at the instruction opcode which is wrong.

X86 has similar floating point register classes, but doesn't try to fold
memory operands, so there is no problem there.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97262 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Change the scheduler from adding nodes in allnodes order</title>
<updated>2010-02-24T06:11:37Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2010-02-24T06:11:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=736a6ea3a2a5322db0e09d97651a1acc07502e41'/>
<id>urn:sha1:736a6ea3a2a5322db0e09d97651a1acc07502e41</id>
<content type='text'>
to adding them in a determinstic order (bottom up from 
the root) based on the structure of the graph itself.

This updates tests for some random changes, interesting
bits: CodeGen/Blackfin/promote-logic.ll no longer crashes.
I have no idea why, but that's good right?

CodeGen/X86/2009-07-16-LoadFoldingBug.ll also fails, but
now compiles to have one fewer constant pool entry, making
the expected load that was being folded disappear.  Since it
is an unreduced mass of gnast, I just removed it.

This fixes PR6370


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97023 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>When emitting an instruction which depends on both a post-incremented</title>
<updated>2010-02-22T03:59:54Z</updated>
<author>
<name>Dan Gohman</name>
<email>gohman@apple.com</email>
</author>
<published>2010-02-22T03:59:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=278f958c61e973975bf63b7a82f3d8322ea16c00'/>
<id>urn:sha1:278f958c61e973975bf63b7a82f3d8322ea16c00</id>
<content type='text'>
induction variable value and a loop-variant value, don't force the
insert position to be at the post-increment position, because it may
not be dominated by the loop-variant value. This fixes a
use-before-def problem noticed on PPC.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96774 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>add some no-unwinds, other minor cleanups.</title>
<updated>2010-02-21T20:33:20Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2010-02-21T20:33:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=728ea19ece48ad848238bb940c2725c4de52933e'/>
<id>urn:sha1:728ea19ece48ad848238bb940c2725c4de52933e</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96756 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>add a triple so that this doesn't fail due to linux/ppc register printing </title>
<updated>2010-02-21T19:27:38Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2010-02-21T19:27:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=25e0f91d059fc59ce44aac07b0d136d6291c821f'/>
<id>urn:sha1:25e0f91d059fc59ce44aac07b0d136d6291c821f</id>
<content type='text'>
syntax.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96748 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>filecheckize and add nouwinds.</title>
<updated>2010-02-21T18:53:28Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2010-02-21T18:53:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=ad14fcc4c2b0e6cb46549f2ac9cf42e54713cc4e'/>
<id>urn:sha1:ad14fcc4c2b0e6cb46549f2ac9cf42e54713cc4e</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96745 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Make g5 target explicit; scheduling affects register choice.</title>
<updated>2010-02-16T23:25:23Z</updated>
<author>
<name>Dale Johannesen</name>
<email>dalej@apple.com</email>
</author>
<published>2010-02-16T23:25:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=4a12de72b050f9276d2027fc9f7a29fc30af5cec'/>
<id>urn:sha1:4a12de72b050f9276d2027fc9f7a29fc30af5cec</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96413 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Adjust register numbers in tests to compensate for the</title>
<updated>2010-02-16T22:31:31Z</updated>
<author>
<name>Dale Johannesen</name>
<email>dalej@apple.com</email>
</author>
<published>2010-02-16T22:31:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=55f9adf543156f918bebcab3924d4210099e20af'/>
<id>urn:sha1:55f9adf543156f918bebcab3924d4210099e20af</id>
<content type='text'>
new lack of R2.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96407 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>When save/restoring CR at prolog/epilog, in a large</title>
<updated>2010-02-12T21:35:34Z</updated>
<author>
<name>Dale Johannesen</name>
<email>dalej@apple.com</email>
</author>
<published>2010-02-12T21:35:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c12da8d30a1394847ee4608fcd54daa24b889b37'/>
<id>urn:sha1:c12da8d30a1394847ee4608fcd54daa24b889b37</id>
<content type='text'>
stack frame, the prolog/epilog code was using the same
register for the copy of CR and the address of the save slot.  Oops.
This is fixed here for Darwin, sort of, by reserving R2 for this case.
A better way would be to do the store before the decrement of SP,
which is safe on Darwin due to the red zone.

SVR4 probably has the same problem, but I don't know how to fix it;
there is no red zone and R2 is already used for something else.
I'm going to leave it to someone interested in that target.

Better still would be to rewrite the CR-saving code completely;
spilling each CR subregister individually is horrible code.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96015 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
