<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp/lib/MC/MCDisassembler, branch master</title>
<subtitle>LLVM with the emscripten fastcomp javascript backend</subtitle>
<id>https://git.amat.us/emscripten-fastcomp/atom/lib/MC/MCDisassembler?h=master</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp/atom/lib/MC/MCDisassembler?h=master'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/'/>
<updated>2013-03-12T18:12:17Z</updated>
<entry>
<title>Remove the assert()'s from the LLVMCreateDisasmCPU() library API and just</title>
<updated>2013-03-12T18:12:17Z</updated>
<author>
<name>Kevin Enderby</name>
<email>enderby@apple.com</email>
</author>
<published>2013-03-12T18:12:17Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=2ee69f1be6473bef40862f4c55e0b33d141c6380'/>
<id>urn:sha1:2ee69f1be6473bef40862f4c55e0b33d141c6380</id>
<content type='text'>
return 0 to indicate failure to create the disassembler.  A library routine
should not assert and just let the caller handler the error.  For example
darwin's otool(1) will simply print an error if it ends up using a library
that is not configured for a target it wants:

% otool -tv ViewController.o
ViewController.o:
(__TEXT,__text) section
can't create arm llvm disassembler

This is much better than an abort which appears as a crash to the user or
even the assert when using a Debug+Asserts built library:

Assertion failed: (MAI &amp;&amp; "Unable to create target asm info!"), function LLVMCreateDisasmCPU, file /Volumes/SandBox/llvm/lib/MC/MCDisassembler/Disassembler.cpp, line 47.

radr://12539918


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176880 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Remove edis - the enhanced disassembler. Fixes PR14654.</title>
<updated>2012-12-19T19:55:47Z</updated>
<author>
<name>Roman Divacky</name>
<email>rdivacky@freebsd.org</email>
</author>
<published>2012-12-19T19:55:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=759e3fa641d0ad01012d16d913015c9f69c8d2ab'/>
<id>urn:sha1:759e3fa641d0ad01012d16d913015c9f69c8d2ab</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170578 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add to the disassembler C API an option to print the disassembled</title>
<updated>2012-12-18T23:47:28Z</updated>
<author>
<name>Kevin Enderby</name>
<email>enderby@apple.com</email>
</author>
<published>2012-12-18T23:47:28Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=5469f605fe86edcfb6d3f0e36f3e3ce0254334cc'/>
<id>urn:sha1:5469f605fe86edcfb6d3f0e36f3e3ce0254334cc</id>
<content type='text'>
instructions in the assembly code variant if one exists.

The intended use for this is so tools like lldb and darwin's otool(1)
can be switched to print Intel-flavored disassembly.

I discussed extensively this API with Jim Grosbach and we feel
while it may not be fully general, in reality there is only one syntax
for each assembly with the exception of X86 which has exactly
two for historical reasons.

rdar://10989182


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170477 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add C API for specifying CPU to the disassembler.</title>
<updated>2012-12-07T23:53:27Z</updated>
<author>
<name>Jim Grosbach</name>
<email>grosbach@apple.com</email>
</author>
<published>2012-12-07T23:53:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=68a590df13f47180abd3022aa75f237ae993770f'/>
<id>urn:sha1:68a590df13f47180abd3022aa75f237ae993770f</id>
<content type='text'>
It was a nasty oversight that we didn't include this when we added this
API in the first place. Blech.

rdar://12839439

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169653 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Added a option to the disassembler to print immediates as hex.</title>
<updated>2012-12-05T18:13:19Z</updated>
<author>
<name>Kevin Enderby</name>
<email>enderby@apple.com</email>
</author>
<published>2012-12-05T18:13:19Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=14ccc9007a932a23201251ced4be4c898a62d6a5'/>
<id>urn:sha1:14ccc9007a932a23201251ced4be4c898a62d6a5</id>
<content type='text'>
This is for the lldb team so most of but not all of the values are
to be printed as hex with this option.  Some small values like the
scale in an X86 address were requested to printed in decimal
without the leading 0x.

There may be some tweaks need to places that may still be in
decimal that they want in hex.  Specially for arm.  I made my best
guess.  Any tweaks from here should be simple.

I also did the best I know now with help from the C++ gurus
creating the cleanest formatImm() utility function and containing
the changes.  But if someone has a better idea to make something
cleaner I'm all ears and game for changing the implementation.

rdar://8109283



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169393 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Sort includes for all of the .h files under the 'lib' tree. These were</title>
<updated>2012-12-04T07:12:27Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2012-12-04T07:12:27Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=a1514e24cc24b050f53a12650e047799358833a1'/>
<id>urn:sha1:a1514e24cc24b050f53a12650e047799358833a1</id>
<content type='text'>
missed in the first pass because the script didn't yet handle include
guards.

Note that the script is now able to handle all of these headers without
manual edits. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169224 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Use the new script to sort the includes of every file under lib.</title>
<updated>2012-12-03T16:50:05Z</updated>
<author>
<name>Chandler Carruth</name>
<email>chandlerc@gmail.com</email>
</author>
<published>2012-12-03T16:50:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=d04a8d4b33ff316ca4cf961e06c9e312eff8e64f'/>
<id>urn:sha1:d04a8d4b33ff316ca4cf961e06c9e312eff8e64f</id>
<content type='text'>
Sooooo many of these had incorrect or strange main module includes.
I have manually inspected all of these, and fixed the main module
include to be the nearest plausible thing I could find. If you own or
care about any of these source files, I encourage you to take some time
and check that these edits were sensible. I can't have broken anything
(I strictly added headers, and reordered them, never removed), but they
may not be the headers you'd really like to identify as containing the
API being implemented.

Many forward declarations and missing includes were added to a header
files to allow them to parse cleanly when included first. The main
module rule does in fact have its merits. =]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>libLTO: Add a utility method to initialize the disassemblers.</title>
<updated>2012-11-24T16:59:10Z</updated>
<author>
<name>Benjamin Kramer</name>
<email>benny.kra@googlemail.com</email>
</author>
<published>2012-11-24T16:59:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=8a2ce5d32987f99185f40eb3085a8972291f8d5c'/>
<id>urn:sha1:8a2ce5d32987f99185f40eb3085a8972291f8d5c</id>
<content type='text'>
Necessary to give disassembler users (like darwin's otool) a possibility to
dlopen libLTO and still initialize the required LLVM bits. This used to go
through libMCDisassembler but that's a gross layering violation, the MC layer
can't pull in functions from the targets. Adding a function to libLTO is a bit
of a hack but not worse than exposing other disassembler bits from libLTO.

Fixes PR14362.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168545 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>[ms-inline asm] Add support for creating AsmRewrites in the target specific</title>
<updated>2012-10-25T20:41:34Z</updated>
<author>
<name>Chad Rosier</name>
<email>mcrosier@apple.com</email>
</author>
<published>2012-10-25T20:41:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=6a020a71173a3ea7738a9df69982e85ddbfe0303'/>
<id>urn:sha1:6a020a71173a3ea7738a9df69982e85ddbfe0303</id>
<content type='text'>
AsmParser logic.  To be used/tested in a subsequent commit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166714 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Add support for annotated disassembly output for X86 and arm.</title>
<updated>2012-10-22T22:31:46Z</updated>
<author>
<name>Kevin Enderby</name>
<email>enderby@apple.com</email>
</author>
<published>2012-10-22T22:31:46Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp/commit/?id=3ed0316f756e2f1730f46654776fcf77f5ace7aa'/>
<id>urn:sha1:3ed0316f756e2f1730f46654776fcf77f5ace7aa</id>
<content type='text'>
Per the October 12, 2012 Proposal for annotated disassembly output sent out by
Jim Grosbach this set of changes implements this for X86 and arm.  The llvm-mc
tool now has a -mdis option to produced the marked up disassembly and a couple
of small example test cases have been added.

rdar://11764962


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