GT-2909 AVR8 ELF import and pcode test improvements

This commit is contained in:
ghidra1
2020-07-29 14:29:46 -04:00
parent 1f8ced9b8d
commit 81f5776555
10 changed files with 323 additions and 10 deletions
@@ -15,7 +15,7 @@
<compiler name="gcc" spec="avr8gcc.cspec" id="gcc"/>
<compiler name="iarV1" spec="avr8iarV1.cspec" id="iarV1"/>
<compiler name="imgCraftV8" spec="avr8imgCraftV8.cspec" id="imgCraftV8"/>
<external_name tool="gnu" name="avr:6"/>
<external_name tool="gnu" name="avr:31"/>
<external_name tool="IDA-PRO" name="avr"/>
</language>
@@ -30,13 +30,13 @@
id="avr8:LE:16:extended">
<description>AVR8 with 22-bit word addressable code space</description>
<compiler name="gcc" spec="avr8egcc.cspec" id="gcc"/>
<external_name tool="gnu" name="avr:6"/>
<external_name tool="gnu" name="avr:51"/>
<external_name tool="IDA-PRO" name="avr"/>
</language>
<language processor="AVR8"
endian="little"
size="16"
size="24"
variant="atmega256"
version="1.3"
slafile="avr8eind.sla"
@@ -45,12 +45,13 @@
id="avr8:LE:16:atmega256">
<description>AVR8 for an Atmega 256</description>
<compiler name="gcc" spec="avr8egcc.cspec" id="gcc"/>
<external_name tool="gnu" name="avr:6"/>
<external_name tool="IDA-PRO" name="avr"/>
</language>
<language processor="AVR8"
endian="little"
size="16"
size="24"
variant="Xmega"
version="1.3"
slafile="avr8xmega.sla"
@@ -58,6 +59,7 @@
id="avr8:LE:24:xmega">
<description>AVR8 for an Xmega</description>
<compiler name="gcc" spec="avr8egcc.cspec" id="gcc"/>
<external_name tool="gnu" name="avr:107"/>
<external_name tool="IDA-PRO" name="avr"/>
</language>
@@ -1,9 +1,10 @@
<opinions>
<constraint loader="Executable and Linking Format (ELF)" compilerSpecID="gcc">
<constraint primary="83" processor="AVR8" endian="little" />
<!-- Elf e_flags are used for the secondary attribute -->
<!-- Elf e_flags are used for the secondary attribute TODO: need to mask with 0x7f -->
<constraint primary="83" secondary= "31" processor="AVR8" size="16" variant="default"/>
<constraint primary="83" secondary= "51" processor="AVR8" size="16" variant="extended"/>
<constraint primary="83" secondary= "6" processor="AVR8" size="24" variant="atmega256"/>
<constraint primary="83" secondary= "107" processor="AVR8" size="24" variant="Xmega"/>
</constraint>
</opinions>