GP-1967: Fix auto-disassembly for object-based traces, incl. framework support.

This commit is contained in:
Dan
2022-06-17 11:41:33 -04:00
parent 858cba5e90
commit 67d52f4fcc
83 changed files with 3561 additions and 888 deletions

View File

@@ -14,6 +14,7 @@ data/languages/toy.cspec||GHIDRA||||END|
data/languages/toy.ldefs||GHIDRA||||END|
data/languages/toy.pspec||GHIDRA||reviewed||END|
data/languages/toy.sinc||GHIDRA||||END|
data/languages/toy64-long8.cspec||GHIDRA||||END|
data/languages/toy64.cspec||GHIDRA||||END|
data/languages/toy64_be.slaspec||GHIDRA||||END|
data/languages/toy64_be_harvard.slaspec||GHIDRA||||END|

View File

@@ -66,6 +66,7 @@
id="Toy:BE:64:default">
<description>Toy (test) processor 64-bit big-endian</description>
<compiler name="default" spec="toy64.cspec" id="default"/>
<compiler name="long8" spec="toy64-long8.cspec" id="long8"/>
</language>
<language processor="Toy"
endian="big"

View File

@@ -0,0 +1,90 @@
<?xml version="1.0" encoding="UTF-8"?>
<compiler_spec>
<data_organization>
<absolute_max_alignment value="0" />
<machine_alignment value="2" />
<default_alignment value="1" />
<default_pointer_alignment value="8" />
<pointer_size value="8" />
<wchar_size value="2" />
<short_size value="2" />
<integer_size value="4" />
<long_size value="8" />
<long_long_size value="8" />
<float_size value="4" />
<double_size value="8" />
<long_double_size value="8" />
<size_alignment_map>
<entry size="1" alignment="1" />
<entry size="2" alignment="2" />
<entry size="4" alignment="4" />
<entry size="8" alignment="8" />
</size_alignment_map>
</data_organization>
<global>
<range space="ram"/>
</global>
<stackpointer register="sp" space="ram"/>
<default_proto>
<prototype name="__stdcall" extrapop="unknown" stackshift="4">
<input pointermax="16">
<pentry minsize="1" maxsize="8">
<register name="r12"/>
</pentry>
<pentry minsize="1" maxsize="8">
<register name="r11"/>
</pentry>
<pentry minsize="1" maxsize="8">
<register name="r10"/>
</pentry>
<pentry minsize="1" maxsize="8">
<register name="r9"/>
</pentry>
<pentry minsize="1" maxsize="8">
<register name="r8"/>
</pentry>
<pentry minsize="1" maxsize="500" align="4">
<addr offset="0" space="stack"/>
</pentry>
</input>
<output>
<pentry minsize="1" maxsize="8">
<register name="r12"/>
</pentry>
</output>
<unaffected>
<varnode space="ram" offset="0" size="8"/>
<register name="sp"/>
<register name="lr"/>
<register name="r0"/>
<register name="r1"/>
<register name="r2"/>
<register name="r3"/>
<register name="r4"/>
<register name="r5"/>
<register name="r6"/>
<register name="r7"/>
</unaffected>
</prototype>
</default_proto>
<prototype name="__stackcall" extrapop="unknown" stackshift="4">
<input pointermax="16">
<pentry minsize="1" maxsize="500" align="4">
<addr offset="0" space="stack"/>
</pentry>
</input>
<output>
<pentry minsize="1" maxsize="8">
<register name="r12"/>
</pentry>
</output>
<unaffected>
<varnode space="ram" offset="0" size="8"/>
<register name="sp"/>
<register name="lr"/>
</unaffected>
</prototype>
</compiler_spec>