37ed9c199ca639565f6ce88105f9e39e898d82d0 |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r222494. Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/include/llvm-c/Disassembler.h
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/include/llvm-c/Disassembler.h
|
6f45b1f0d689d2cafd3a64be9b548bb8bb0927b0 |
|
01-Nov-2013 |
Kevin Enderby <enderby@apple.com> |
Add to the disassembler C API output reference types for Objective-C data structures. This is allows tools such as darwin's otool(1) that uses the LLVM disassembler take a pointer value being loaded by an instruction and add a comment to what it is being referenced to make following disassembly of Objective-C programs more readable. For example disassembling the Mac OS X TextEdit app one will see comments like the following: movq 0x20684(%rip), %rsi ## Objc selector ref: standardUserDefaults movq 0x21985(%rip), %rdi ## Objc class ref: _OBJC_CLASS_$_NSUserDefaults movq 0x1d156(%rip), %r14 ## Objc message: +[NSUserDefaults standardUserDefaults] leaq 0x23615(%rip), %rdx ## Objc cfstring ref: @"SelectLinePanel" callq 0x10001386c ## Objc message: -[[%rdi super] initWithWindowNibName:] These diffs also include putting quotes around C strings in literal pools and uses "symbol address" in the comment when adding a symbol name to the comment to tell these types of references apart: leaq 0x4f(%rip), %rax ## literal pool for: "Hello world" movq 0x1c3ea(%rip), %rax ## literal pool symbol address: ___stack_chk_guard Of course the easy changes are in the LLVM disassembler and the hard work is up to the implementer of the SymbolLookUp() call back. rdar://10602439 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193833 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
e21c3137e1dfcd9644d3870a0a4528374375271f |
|
23-Oct-2013 |
NAKAMURA Takumi <geek4civic@gmail.com> |
include/llvm-c: Whitespace. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
797f06e19b6f17217a69dea4d6ce900625432595 |
|
03-Oct-2013 |
Quentin Colombet <qcolombet@apple.com> |
[llvm-c][Disassembler] Add an option to print latency information in disassembled output alongside the instructions. E.g., on a vector shuffle operation with a memory operand, disassembled outputs are: * Without the option: vpshufd $-0x79, (%rsp), %xmm0 * With the option: vpshufd $-0x79, (%rsp), %xmm0 ## Latency: 5 The printed latency is extracted from the schedule model available in the disassembler context. Thus, this option has no effect if there is not a scheduling model for the target. This boils down to one may need to specify the CPU string, so that this option could have an effect. Note: Latency < 2 are not printed. This part of <rdar://problem/14687488>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191859 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
76502a756da8fbc3cf6f2f26bc09cce598a9fc03 |
|
02-Oct-2013 |
Quentin Colombet <qcolombet@apple.com> |
[llvm-c][Disassembler] Add an option to reproduce in disassembled output the comments issued with verbose assembly. E.g., on a vector shuffle operation, disassembled output are: * Without the option: vpshufd $-0x79, (%rsp), %xmm0 * With the option: vpshufd $-0x79, (%rsp), %xmm0 ## xmm0 = mem[3,1,0,2] This part of <rdar://problem/14687488>. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191799 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
5469f605fe86edcfb6d3f0e36f3e3ce0254334cc |
|
19-Dec-2012 |
Kevin Enderby <enderby@apple.com> |
Add to the disassembler C API an option to print the disassembled 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
/external/llvm/include/llvm-c/Disassembler.h
|
68a590df13f47180abd3022aa75f237ae993770f |
|
08-Dec-2012 |
Jim Grosbach <grosbach@apple.com> |
Add C API for specifying CPU to the disassembler. 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
/external/llvm/include/llvm-c/Disassembler.h
|
14ccc9007a932a23201251ced4be4c898a62d6a5 |
|
05-Dec-2012 |
Kevin Enderby <enderby@apple.com> |
Added a option to the disassembler to print immediates as hex. 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
/external/llvm/include/llvm-c/Disassembler.h
|
3ed0316f756e2f1730f46654776fcf77f5ace7aa |
|
23-Oct-2012 |
Kevin Enderby <enderby@apple.com> |
Add support for annotated disassembly output for X86 and arm. 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
/external/llvm/include/llvm-c/Disassembler.h
|
8c51e3995d8b8fd1cd88ef18548be4b8f8e3d6f1 |
|
19-Jul-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove tabs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
6244b518880842f2c15200ee041e06799e4cc779 |
|
21-Mar-2012 |
Gregory Szorc <gregory.szorc@gmail.com> |
Organize LLVM C API docs into doxygen modules; add docs This gives a lot of love to the docs for the C API. Like Clang's documentation, the C API is now organized into a Doxygen "module" (LLVMC). Each C header file is a child of the main module. Some modules (like Core) have a hierarchy of there own. The produced documentation is thus better organized (before everything was in one monolithic list). This patch also includes a lot of new documentation for APIs in Core.h. It doesn't document them all, but is better than none. Function docs are missing @param and @return annotation, but the documentation body now commonly provides help details (like the expected llvm::Value sub-type to expect). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153157 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
9e5887b17e634b98f7c1cf0ee4f25c218097d08e |
|
05-Oct-2011 |
Kevin Enderby <enderby@apple.com> |
Adding back support for printing operands symbolically to ARM's new disassembler using llvm's public 'C' disassembler API now including annotations. Hooked this up to Darwin's otool(1) so it can again print things like branch targets for example this: blx _puts instead of this: blx #-36 and includes support for annotations for branches to symbol stubs like: bl 0x40 @ symbol stub for: _puts and annotations for pc relative loads like this: ldr r3, #8 @ literal pool for: Hello, world! Also again can print the expression encoded in the Mach-O relocation entries for things like this: movt r0, :upper16:((_foo-_bar)+1234) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141129 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
1a55c419a6427d8bbbdd62212a5cf763a3dcd05d |
|
22-May-2011 |
Chris Lattner <sabre@nondot.org> |
Fix some minor typos and grammar. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131835 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
7a2bdde0a0eebcd2125055e0eacaca040f0b766c |
|
15-Apr-2011 |
Chris Lattner <sabre@nondot.org> |
Fix a ton of comment typos found by codespell. Patch by Luis Felipe Strano Moraes! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129558 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
bd3327654b5708f1ba92aff3ab25b1bbf5034797 |
|
11-Apr-2011 |
Kevin Enderby <enderby@apple.com> |
Adding support for printing operands symbolically to llvm's public 'C' disassembler API. Hooked this up to the ARM target so such tools as Darwin's otool(1) can now print things like branch targets for example this: blx _puts instead of this: blx #-36 And even print the expression encoded in the Mach-O relocation entried for things like this: movt r0, :upper16:((_foo-_bar)+1234) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
8470475d6b684b7f9a4871dd90e4382ad8a509b2 |
|
29-Mar-2011 |
Daniel Dunbar <daniel@zuster.org> |
C-API: Include DataTypes.h instead of stdint.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
93f79364351650b58172522ae8346153a3c67a5c |
|
28-Mar-2011 |
Kevin Enderby <enderby@apple.com> |
Again adding a C API to the disassembler for use by such tools as Darwin's otool(1), this time with the needed fix for case sensitive file systems :) . This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
17cbaa3c82f5982c7ee3089f95529af1afd407d3 |
|
26-Mar-2011 |
Kevin Enderby <enderby@apple.com> |
Remove the files for r128308 as it is causing a buildbot failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128309 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|
12b04be85d01e59e87fa1023629ebf507e032749 |
|
26-Mar-2011 |
Kevin Enderby <enderby@apple.com> |
Adding a C API to the disassembler for use by such tools as Darwin's otool(1). This is a work in progress as the interface for producing symbolic operands is not done. But a hacked prototype using information from the object file's relocation entiries and replacing immediate operands with MCExpr's has been shown to work with no changes to the instrucion printer. These APIs will be moved into a dynamic library at some point. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm-c/Disassembler.h
|