<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/test/CodeGen/PowerPC, branch release_25</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/test/CodeGen/PowerPC?h=release_25</id>
<link rel='self' href='https://git.amat.us/llvm/atom/test/CodeGen/PowerPC?h=release_25'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2009-01-25T06:32:01Z</updated>
<entry>
<title>Private linkage support for PPC / Darwin.</title>
<updated>2009-01-25T06:32:01Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2009-01-25T06:32:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=1902a129a5b9fc9ac1ecbaf76d2ff7a1bf04691a'/>
<id>urn:sha1:1902a129a5b9fc9ac1ecbaf76d2ff7a1bf04691a</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62955 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix PPC ISD::Declare isel and eliminate the need for PPCTargetLowering::LowerGlobalAddress to check if isVerifiedDebugInfoDesc() is true. Given the recent changes, it would falsely return true for a lot of GlobalAddressSDNode's.</title>
<updated>2009-01-16T22:57:32Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2009-01-16T22:57:32Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=ee5c2b8ba2bd9670931705ca04a46052d534ade9'/>
<id>urn:sha1:ee5c2b8ba2bd9670931705ca04a46052d534ade9</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62373 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add the private linkage.</title>
<updated>2009-01-15T20:18:42Z</updated>
<author>
<name>Rafael Espindola</name>
<email>rafael.espindola@gmail.com</email>
</author>
<published>2009-01-15T20:18:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=bb46f52027416598a662dc1c58f48d9d56b1a65b'/>
<id>urn:sha1:bb46f52027416598a662dc1c58f48d9d56b1a65b</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62279 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>this test should not run opt -std-compile-opts, it should run </title>
<updated>2009-01-09T05:32:00Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-01-09T05:32:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=a545778a77359110dfb6c5d24df82321d7405d71'/>
<id>urn:sha1:a545778a77359110dfb6c5d24df82321d7405d71</id>
<content type='text'>
just llc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61979 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>rename a file to follow naming conventions.</title>
<updated>2009-01-02T01:52:35Z</updated>
<author>
<name>Chris Lattner</name>
<email>sabre@nondot.org</email>
</author>
<published>2009-01-02T01:52:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=aca3e68dd8ff2664c20c1844cee722d821af51b8'/>
<id>urn:sha1:aca3e68dd8ff2664c20c1844cee722d821af51b8</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61550 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix PR3149. If an early clobber def is a physical register and it is tied to an input operand, it effectively extends the live range of the physical register. Currently we do not have a good way to represent this.</title>
<updated>2008-12-19T20:58:01Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2008-12-19T20:58:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=5379f412bc6ac6171f3bd73930197bfce88c2faa'/>
<id>urn:sha1:5379f412bc6ac6171f3bd73930197bfce88c2faa</id>
<content type='text'>
172     %ECX&lt;def&gt; = MOV32rr %reg1039&lt;kill&gt;
180     INLINEASM &lt;es:subl $5,$1
        sbbl $3,$0&gt;, 10, %EAX&lt;def&gt;, 14, %ECX&lt;earlyclobber,def&gt;, 9, %EAX&lt;kill&gt;,
36, &lt;fi#0&gt;, 1, %reg0, 0, 9, %ECX&lt;kill&gt;, 36, &lt;fi#1&gt;, 1, %reg0, 0
188     %EAX&lt;def&gt; = MOV32rr %EAX&lt;kill&gt;
196     %ECX&lt;def&gt; = MOV32rr %ECX&lt;kill&gt;
204     %ECX&lt;def&gt; = MOV32rr %ECX&lt;kill&gt;
212     %EAX&lt;def&gt; = MOV32rr %EAX&lt;kill&gt;
220     %EAX&lt;def&gt; = MOV32rr %EAX
228     %reg1039&lt;def&gt; = MOV32rr %ECX&lt;kill&gt;

The early clobber operand ties ECX input to the ECX def.

The live interval of ECX is represented as this:
%reg20,inf = [46,47:1)[174,230:0)  0@174-(230) 1@46-(47)

The right way to represent this is something like
%reg20,inf = [46,47:2)[174,182:1)[181:230:0)  0@174-(182) 1@181-230 @2@46-(47)

Of course that won't work since that means overlapping live ranges defined by two val#.

The workaround for now is to add a bit to val# which says the val# is redefined by a early clobber def somewhere. This prevents the move at 228 from being optimized away by SimpleRegisterCoalescing::AdjustCopiesBackFrom.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61259 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix bug 3202.</title>
<updated>2008-12-19T10:55:56Z</updated>
<author>
<name>Rafael Espindola</name>
<email>rafael.espindola@gmail.com</email>
</author>
<published>2008-12-19T10:55:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=2f6fea90a54787d873cfc25f33668cb4cc7d6e1e'/>
<id>urn:sha1:2f6fea90a54787d873cfc25f33668cb4cc7d6e1e</id>
<content type='text'>
The EH_frame and .eh symbols are now private, except for darwin9 and earlier.
The patch also fixes the definition of PrivateGlobalPrefix on pcc linux.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61242 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>We have decided not to support inline asm where an output operand with a matching input operand with incompatible type (i.e. either one is a floating point and the other is an integer or the sizes of the types differ). SelectionDAGBuild will catch these and exit with an error.</title>
<updated>2008-12-16T18:21:39Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2008-12-16T18:21:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=09dc9c0c8363a689aa5559ae0e3ac33e381c2bb2'/>
<id>urn:sha1:09dc9c0c8363a689aa5559ae0e3ac33e381c2bb2</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61092 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Re-did 60519. It turns out Darwin's handling of hidden visibility symbols are a bit more complicate than I expected. Both declarations and weak definitions still need a stub indirection. However, the stubs are in data section and they contain the addresses of the actual symbols.</title>
<updated>2008-12-05T01:06:39Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2008-12-05T01:06:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=ae94e594164b193236002516970aeec4c4574768'/>
<id>urn:sha1:ae94e594164b193236002516970aeec4c4574768</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60571 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Remove a (what appears to be) overly strict assertion. Here is what happened:</title>
<updated>2008-12-02T21:57:09Z</updated>
<author>
<name>Evan Cheng</name>
<email>evan.cheng@apple.com</email>
</author>
<published>2008-12-02T21:57:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=96da0419490148e42dbab6984c07e28ec66a591d'/>
<id>urn:sha1:96da0419490148e42dbab6984c07e28ec66a591d</id>
<content type='text'>
1. ppcf128 select is expanded to f64 select's.
2. f64 select operand 0 is an i1 truncate, it's promoted to i32 zero_extend.
3. f64 select is updated. It's changed back to a "NewNode" and being re-analyzed.
4. f64 select operands are being processed. Operand 0 is a "NewNode". It's being expunged out of ReplacedValues map.
5. ExpungeNode tries to remap f64 select and notice it's a "NewNode" and assert.
Duncan, please take a look. Thanks.


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