<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/test, branch testing</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/test?h=testing</id>
<link rel='self' href='https://git.amat.us/llvm/atom/test?h=testing'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2013-03-22T05:47:44Z</updated>
<entry>
<title>Reorder the DIFile field in DILexicalBlock to become a prefix common with other DIScopes</title>
<updated>2013-03-22T05:47:44Z</updated>
<author>
<name>David Blaikie</name>
<email>dblaikie@gmail.com</email>
</author>
<published>2013-03-22T05:47:44Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c204410d6bc435e7cb8ea768759a54135e8e92b5'/>
<id>urn:sha1:c204410d6bc435e7cb8ea768759a54135e8e92b5</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177703 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Remove the ARM-specific variant of this test. It's already covered by</title>
<updated>2013-03-22T05:16:46Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2013-03-22T05:16:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=d854299712e253b287a1bb7e890be1f78179ffb6'/>
<id>urn:sha1:d854299712e253b287a1bb7e890be1f78179ffb6</id>
<content type='text'>
the ARM build bots, and it adds a weird case to the test suite where
a test uses as inputs files in the parent directory.

Talked about this with Dave on IRC and he's fine with this approach even
though it isn't optimal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177700 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix the invalid opcode for Mips branch instructions in the assembler</title>
<updated>2013-03-22T00:29:10Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-03-22T00:29:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=d3107fbc54a5b5156f0aabc8788724f1469eb9df'/>
<id>urn:sha1:d3107fbc54a5b5156f0aabc8788724f1469eb9df</id>
<content type='text'>
For mips a branch an 18-bit signed offset (the 16-bit 
offset field shifted left 2 bits) is added to the 
address of the instruction following the branch 
(not the branch itself), in the branch delay slot, 
to form a PC-relative effective target address. 

Previously, the code generator did not perform the 
shift of the immediate branch offset which resulted 
in wrong instruction opcode. This patch fixes the issue.

Contributor: Vladimir Medic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177687 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>This patch that enables the Mips assembler to use symbols for offset for instructions</title>
<updated>2013-03-22T00:05:30Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-03-22T00:05:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=25df6a93f3324bd30f44dcb95fd17aff0a92d438'/>
<id>urn:sha1:25df6a93f3324bd30f44dcb95fd17aff0a92d438</id>
<content type='text'>
This patch uses the generated instruction info tables to 
identify memory/load store instructions.
After successful matching and based on the operand type 
and size, it generates additional instructions to the output.

Contributor: Vladimir Medic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177685 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix a register-class comparison bug in PPCCTRLoops</title>
<updated>2013-03-21T23:23:34Z</updated>
<author>
<name>Hal Finkel</name>
<email>hfinkel@anl.gov</email>
</author>
<published>2013-03-21T23:23:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=3ea1b064a0b9c3d161b0f77a9e957970f98907ab'/>
<id>urn:sha1:3ea1b064a0b9c3d161b0f77a9e957970f98907ab</id>
<content type='text'>
Thanks to Jakob for isolating the underlying problem from the
test case in r177423. The original commit had introduced
asymmetric copy operations, but these turned out to be a work-around
to the real problem (the use of == instead of hasSubClassEq in PPCCTRLoops).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177679 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Refactor the filename/directory information in DISubprogram to refer directly to the pair rather than the DIFile.</title>
<updated>2013-03-21T23:08:34Z</updated>
<author>
<name>David Blaikie</name>
<email>dblaikie@gmail.com</email>
</author>
<published>2013-03-21T23:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=bb4e619cd9ff34708e3baaf0aac70275a917e0ba'/>
<id>urn:sha1:bb4e619cd9ff34708e3baaf0aac70275a917e0ba</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177677 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Move the DIFile in DISubprogram to the beginning to be a common prefix along with other DIScopes</title>
<updated>2013-03-21T22:29:36Z</updated>
<author>
<name>David Blaikie</name>
<email>dblaikie@gmail.com</email>
</author>
<published>2013-03-21T22:29:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=ced228dec30f088367d622720d6ccf7a22cd11e4'/>
<id>urn:sha1:ced228dec30f088367d622720d6ccf7a22cd11e4</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177674 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>This patch enables the Mips .set directive to define aliases</title>
<updated>2013-03-21T21:44:16Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-03-21T21:44:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c91b5e197bb41ccb2f9f78b6176e61c848df9e15'/>
<id>urn:sha1:c91b5e197bb41ccb2f9f78b6176e61c848df9e15</id>
<content type='text'>
The .set directive in the Mips the assembler can be 
used to set the value of a symbol to an expression. 
This changes the symbol's value and type to conform 
to the expression's.

Syntax: .set symbol, expression

This patch implements the parsing of the above syntax 
and enables the parser to use defined symbols when 
parsing operands.

Contributor: Vladimir Medic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177667 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Implement builtin_{setjmp/longjmp} on PPC</title>
<updated>2013-03-21T21:37:52Z</updated>
<author>
<name>Hal Finkel</name>
<email>hfinkel@anl.gov</email>
</author>
<published>2013-03-21T21:37:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=7ee74a663a3b4d4ee6b55d23362f347ed1d390c2'/>
<id>urn:sha1:7ee74a663a3b4d4ee6b55d23362f347ed1d390c2</id>
<content type='text'>
This implements SJLJ lowering on PPC, making the Clang functions
__builtin_{setjmp/longjmp} functional on PPC platforms. The implementation
strategy is similar to that on X86, with the exception that a branch-and-link
variant is used to get the right jump address. Credit goes to Bill Schmidt for
suggesting the use of the unconditional bcl form (instead of the regular bl
instruction) to limit return-address-cache pollution.

Benchmarking the speed at -O3 of:

static jmp_buf env_sigill;

void foo() {
                __builtin_longjmp(env_sigill,1);
}

main() {
	...

        for (int i = 0; i &lt; c; ++i) {
                if (__builtin_setjmp(env_sigill)) {
                        goto done;
                } else {
                        foo();
                }

done:;
        }

	...
}

vs. the same code using the libc setjmp/longjmp functions on a P7 shows that
this builtin implementation is ~4x faster with Altivec enabled and ~7.25x
faster with Altivec disabled. This comparison is somewhat unfair because the
libc version must also save/restore the VSX registers which we don't yet
support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177666 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix Darwin NEON FP and increase coverage</title>
<updated>2013-03-21T21:30:49Z</updated>
<author>
<name>Renato Golin</name>
<email>renato.golin@linaro.org</email>
</author>
<published>2013-03-21T21:30:49Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=92ebd49f3fdd3529a091e008dea97e8ebfff5dd1'/>
<id>urn:sha1:92ebd49f3fdd3529a091e008dea97e8ebfff5dd1</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177664 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
