<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp/lib/Target/Mips/AsmParser, branch master</title>
<subtitle>LLVM with the emscripten fastcomp javascript backend</subtitle>
<id>https://git.amat.us/emscripten-fastcomp/atom/lib/Target/Mips/AsmParser?h=master</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp/atom/lib/Target/Mips/AsmParser?h=master'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/'/>
<updated>2013-04-25T23:31:35Z</updated>
<entry>
<title>Mips assembler: .set reorder support</title>
<updated>2013-04-25T23:31:35Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-04-25T23:31:35Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=97265a48895a2cda7f04e47bfe935c4fdd71f8ae'/>
<id>urn:sha1:97265a48895a2cda7f04e47bfe935c4fdd71f8ae</id>
<content type='text'>
Mips have delayslots for certain instructions 
like jumps and branches. These are instructions 
that follow the branch or jump and are executed
before the jump or branch is completed.

Early Mips compilers could not cope with delayslots
and left them up to the assembler. The assembler would
fill the delayslots with the appropriate instruction,
usually just a nop to allow correct runtime behavior.

The default behavior for this is set with .set reorder.
To tell the assembler that you don't want it to mess with
the delayslot one used .set noreorder.

For backwards compatibility we need to support
.set reorder and have it be the default behavior in the 
assembler.

Our support for it is to insert a NOP directly after an
instruction with a delayslot when in .set reorder mode.

Contributer: Vladimir Medic


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180584 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Mips assembler: formatting and comment changes.</title>
<updated>2013-04-18T00:41:53Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-04-18T00:41:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=86924b4182537745659f2660244f3402c1e1ca4d'/>
<id>urn:sha1:86924b4182537745659f2660244f3402c1e1ca4d</id>
<content type='text'>
This patch should not have any functional changes. 



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179737 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Fix -Werror build.</title>
<updated>2013-04-17T06:45:11Z</updated>
<author>
<name>Evgeniy Stepanov</name>
<email>eugeni.stepanov@gmail.com</email>
</author>
<published>2013-04-17T06:45:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=ce47d5ba8cf7e30cbf0d6b80d3f7d10916c7fe31'/>
<id>urn:sha1:ce47d5ba8cf7e30cbf0d6b80d3f7d10916c7fe31</id>
<content type='text'>
Broken in r179657.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179669 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Mips assembler: Enable handling of nested expressions</title>
<updated>2013-04-17T00:18:04Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-04-17T00:18:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=8afc8b7e63d5ce2d027e92934d16b19e5ba2db59'/>
<id>urn:sha1:8afc8b7e63d5ce2d027e92934d16b19e5ba2db59</id>
<content type='text'>
This patch allows the Mips assembler to parse and emit nested 
expressions as instruction operands. It also extends the 
expansion of memory instructions when an offset is given as 
an expression. 

Contributer: Vladimir Medic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179657 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Mips assembler: Explicit floating point condition register recognition.</title>
<updated>2013-04-15T22:21:55Z</updated>
<author>
<name>Jack Carter</name>
<email>jack.carter@imgtec.com</email>
</author>
<published>2013-04-15T22:21:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=b8145e3881872fffbac15693c94536446f060330'/>
<id>urn:sha1:b8145e3881872fffbac15693c94536446f060330</id>
<content type='text'>
This patch allows the assembler to recognize $fcc0 
as a valid register for conditional move instructions. 

Corresponding test cases have been added.

Contributer: Vladimir Medic



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@179567 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/emscripten-fastcomp/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>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/emscripten-fastcomp/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>Silence anonymous type in anonymous union warnings.</title>
<updated>2013-03-15T00:42:55Z</updated>
<author>
<name>Eric Christopher</name>
<email>echristo@gmail.com</email>
</author>
<published>2013-03-15T00:42:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=a286fc065a5bc846d73c8407a534a1d3c1d70b59'/>
<id>urn:sha1:a286fc065a5bc846d73c8407a534a1d3c1d70b59</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177135 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Mips specific standalone assembler addressing mode %hi and %lo.</title>
<updated>2013-02-21T02:09:31Z</updated>
<author>
<name>Jack Carter</name>
<email>jcarter@mips.com</email>
</author>
<published>2013-02-21T02:09:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=77217229ba1bbc92f3a53099fa91bcdaa7797da8'/>
<id>urn:sha1:77217229ba1bbc92f3a53099fa91bcdaa7797da8</id>
<content type='text'>
The constructs %hi() and %lo() represent the high and low 16 
bits of the address. 
Because the 16 bit offset field of an LW instruction is 
interpreted as signed, if bit 15 of the low part is 1 then the 
low part will act as a negative and 1 needs to be added to the 
high part.

Contributer: Vladimir Medic


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175707 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>ELF symbol table field st_other support, </title>
<updated>2013-02-20T23:11:17Z</updated>
<author>
<name>Jack Carter</name>
<email>jcarter@mips.com</email>
</author>
<published>2013-02-20T23:11:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=99e98551bf8719764f9345ce856118f3f1a9c441'/>
<id>urn:sha1:99e98551bf8719764f9345ce856118f3f1a9c441</id>
<content type='text'>
excluding visibility bits.

Mips specific standalone assembler directive "set at".

This directive changes the general purpose register
that the assembler will use when given the symbolic
register name $at.

This does not include negative testing. That will come
in a future patch.

A side affect of this patch recognizes the different 
GPR register names for temporaries between old abi
and new abi so a test case for that is included.

Contributer: Vladimir Medic


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