Open Sleigh-InSPECtor opened 1 month ago
With this patch applied I get a lot of build errors at least for Ghidra Staging:
> Task :ARM:sleighCompile
Compiling ./data/languages/ARM4_be.slaspec:
79 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM4_le.slaspec:
79 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
Compiling ./data/languages/ARM4t_be.slaspec:
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
155 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM4t_le.slaspec:
155 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM5_be.slaspec:
79 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
Compiling ./data/languages/ARM5_le.slaspec:
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
79 NOP constructors found
Compiling ./data/languages/ARM5t_be.slaspec:
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
155 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM5t_le.slaspec:
155 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
Compiling ./data/languages/ARM6_be.slaspec:
No output produced
275 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM6_le.slaspec:
275 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM7_be.slaspec:
502 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM7_le.slaspec:
502 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM8_be.slaspec:
539 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM8_le.slaspec:
539 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM8m_be.slaspec:
537 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
Compiling ./data/languages/ARM8m_le.slaspec:
537 NOP constructors found
Use -n switch to list each individually
ARMinstructions.sinc:1796: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1796 is first conflict
ARMinstructions.sinc:1802: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1802 is first conflict
ARMinstructions.sinc:1808: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1808 is first conflict
ARMinstructions.sinc:1813: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1813 is first conflict
ARMinstructions.sinc:1818: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1818 is first conflict
ARMinstructions.sinc:1824: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1824 is first conflict
ARMinstructions.sinc:1830: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1830 is first conflict
ARMinstructions.sinc:1835: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1835 is first conflict
ARMinstructions.sinc:1840: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1840 is first conflict
ARMinstructions.sinc:1846: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1846 is first conflict
ARMinstructions.sinc:1852: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1852 is first conflict
ARMinstructions.sinc:1857: Table 'addrmode3' has inconsistent export size; Constructor at ARMinstructions.sinc:1857 is first conflict
ARMinstructions.sinc:1784: Table 'addrmode3' exports size 0
No output produced
0 languages successfully compiled
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM4_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM4_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM4t_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM4t_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM5_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM5_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM5t_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM5t_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM6_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM6_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM7_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM7_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM8_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM8_le.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM8m_be.slaspec failed to compile
/tmp/ghidra/Ghidra/Processors/ARM/./data/languages/ARM8m_le.slaspec failed to compile
16 languages failed to compile
> Task :ARM:sleighCompile FAILED
You're right @jobermayr, you have to give it a size. Since everything else is exporting a varnode based on rn
it should be size 4. This should fix it:
local tmp:4 = reloff; export tmp;
As part of a research project testing the accuracy of the SLEIGH specifications compared to real hardware, we observed unexpected behaviours in a few instructions that used
addrmode3
constructor for AArch32 (ARM:LE:32:v8
).According to the manual, the instruction in the example stores two words from two registers to memory. However, we noticed the output was incorrect.
e.g, for AArch32 with,
Instruction:
0xf000cfb1 or 0xf0004fb1, strdlt r0,r1,[0x10000008]
initial_registers:{ "r0": 0xaabc1448, "r1": 0x1923c5ef, "NG": 0x1 }
initial_memory:{ "0x10000008": [ 0xfd, 0xd6, 0xf0, 0x8f ] }
We get:
Hardware:
{ 0x10000008: 0x48, 0x10000009: 0x14, 0x1000000A: 0xbc, 0x1000000B: 0xaa, 0x1000000C: 0xef, 0x1000000D: 0xc5, 0x1000000E: 0x23, 0x1000000F: 0x19 }
Patched Spec:
{ 0x10000008: 0x48, 0x10000009: 0x14, 0x1000000A: 0xbc, 0x1000000B: 0xaa, 0x1000000C: 0xef, 0x1000000D: 0xc5, 0x1000000E: 0x23, 0x1000000F: 0x19 }
Existing Spec:
{ 0x8FF0D6FD: 0x48, 0x8FF0D6FE: 0x14, 0x8FF0D6FF: 0xbc, 0x8FF0D700: 0xaa, 0x8FF0D701: 0xef, 0x8FF0D702: 0xc5, 0x8FF0D703: 0x23, 0x8FF0D704: 0x19 }
Note: The patched spec does not introduce any disassembly changes to the best of our knowledge.