<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm/lib/Target/Mips/Disassembler, branch release_32</title>
<subtitle>http://llvm.org</subtitle>
<id>https://git.amat.us/llvm/atom/lib/Target/Mips/Disassembler?h=release_32</id>
<link rel='self' href='https://git.amat.us/llvm/atom/lib/Target/Mips/Disassembler?h=release_32'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/'/>
<updated>2012-09-27T02:01:10Z</updated>
<entry>
<title>MIPS DSP: add functions which decode DSP and accumulator registers.</title>
<updated>2012-09-27T02:01:10Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-09-27T02:01:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=5e69cef21bad39f796f8b2bee4117c04a10b0238'/>
<id>urn:sha1:5e69cef21bad39f796f8b2bee4117c04a10b0238</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164748 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Switch the fixed-length disassembler to be table-driven.</title>
<updated>2012-08-14T19:06:05Z</updated>
<author>
<name>Jim Grosbach</name>
<email>grosbach@apple.com</email>
</author>
<published>2012-08-14T19:06:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=fc1a161d76f5cc0204bed3bce3e27cf36ac76d22'/>
<id>urn:sha1:fc1a161d76f5cc0204bed3bce3e27cf36ac76d22</id>
<content type='text'>
Refactor the TableGen'erated fixed length disassemblmer to use a
table-driven state machine rather than a massive set of nested
switch() statements.

As a result, the ARM Disassembler (ARMDisassembler.cpp) builds much more
quickly and generates a smaller end result. For a Release+Asserts build on
a 16GB 3.4GHz i7 iMac w/ SSD:

Time to compile at -O2 (averaged w/ hot caches):
  Previous: 35.5s
  New:       8.9s

TEXT size:
  Previous: 447,251
  New:      297,661

Builds in 25% of the time previously required and generates code 66% of
the size.

Execution time of the disassembler is only slightly slower (7% disassembling
10 million ARM instructions, 19.6s vs 21.0s). The new implementation has
not yet been tuned, however, so the performance should almost certainly
be recoverable should it become a concern.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161888 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Reapply r158846.</title>
<updated>2012-07-09T18:46:47Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-07-09T18:46:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=241b77fa451f8076e47c37212028454ad52ece15'/>
<id>urn:sha1:241b77fa451f8076e47c37212028454ad52ece15</id>
<content type='text'>
Access mips register classes via MCRegisterInfo's functions instead of via the
TargetRegisterClasses defined in MipsGenRegisterInfo.inc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159953 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>revert r159851.</title>
<updated>2012-07-06T20:16:48Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-07-06T20:16:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=63d10fbc89c02758cd91e3b53749e55c2bd0cf65'/>
<id>urn:sha1:63d10fbc89c02758cd91e3b53749e55c2bd0cf65</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159854 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Reapply r158846.</title>
<updated>2012-07-06T19:29:11Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-07-06T19:29:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=e32cc0d5456eb7beb4030f0c0205c724a485ff31'/>
<id>urn:sha1:e32cc0d5456eb7beb4030f0c0205c724a485ff31</id>
<content type='text'>
Include file MipsGenRegisterInfo.inc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159851 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Revert r158846.</title>
<updated>2012-06-20T21:19:39Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-06-20T21:19:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=02a227af91889d39f5e811e2e27ecce8144499eb'/>
<id>urn:sha1:02a227af91889d39f5e811e2e27ecce8144499eb</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158855 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>In MipsDisassembler.cpp, instead of defining register class tables, use the ones</title>
<updated>2012-06-20T20:39:23Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-06-20T20:39:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=b66510f309077d9f616462a1696f712236ce5a22'/>
<id>urn:sha1:b66510f309077d9f616462a1696f712236ce5a22</id>
<content type='text'>
that are generated by TableGen and are already available in
MipsGenRegisterInfo.inc. Suggested by Jakob Stoklund Olesen.

Also, fix bug in function DecodeAFGR64RegisterClass.

Patch by Vladimir Medic. 


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158846 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use uint16_t to store registers in static tables. Matches other tables.</title>
<updated>2012-05-24T06:09:56Z</updated>
<author>
<name>Craig Topper</name>
<email>craig.topper@gmail.com</email>
</author>
<published>2012-05-24T06:09:56Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=c5ce4d1d52a30c52c2ffa8d281e874db4d7f3eda'/>
<id>urn:sha1:c5ce4d1d52a30c52c2ffa8d281e874db4d7f3eda</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157375 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Move MipsDisassembler classes into an anonymous namespace.</title>
<updated>2012-05-01T14:34:24Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2012-05-01T14:34:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=0998627b24a1f183920e782abf717e25cbb1a5f5'/>
<id>urn:sha1:0998627b24a1f183920e782abf717e25cbb1a5f5</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155915 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Delete latter half of CMakeLists.txt.</title>
<updated>2012-04-17T18:18:09Z</updated>
<author>
<name>Akira Hatanaka</name>
<email>ahatanaka@mips.com</email>
</author>
<published>2012-04-17T18:18:09Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/llvm/commit/?id=b90757078f6c270f0b4138dde10a02bd3b64750f'/>
<id>urn:sha1:b90757078f6c270f0b4138dde10a02bd3b64750f</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@154936 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
