GP-4319 updated calling convention with larger sizes and allow floats

This commit is contained in:
emteere
2024-02-23 00:22:49 -05:00
parent e1a2362b4f
commit cd4b0b1a72
@@ -33,6 +33,12 @@
</returnaddress>
<stackpointer register="a10" space="ram"/>
<prefersplit style="inhalf">
<register name="e4"/>
<register name="e6"/>
</prefersplit>
<default_proto>
<prototype name="__stdcall" extrapop="0" stackshift="0">
<input>
@@ -51,34 +57,41 @@
<pentry minsize="4" maxsize="4" metatype="ptr">
<register name="a7"/>
</pentry>
<pentry minsize="1" maxsize="4" extension="inttype"> <!-- This is the first non pointer -->
<pentry minsize="1" maxsize="4"> <!-- This is the first non pointer -->
<register name="d4"/>
</pentry>
<pentry minsize="1" maxsize="4" extension="inttype">
<pentry minsize="1" maxsize="4">
<register name="d5"/>
</pentry>
<pentry minsize="1" maxsize="4" extension="inttype">
<register name="d6"/>
</pentry>
<pentry minsize="1" maxsize="4" extension="inttype">
<register name="d7"/>
</pentry>
<pentry minsize="5" maxsize="8"> <!-- This is the first >4 byte non pointer -->
<register name="e4"/>
</pentry>
<pentry minsize="1" maxsize="4">
<register name="d6"/>
</pentry>
<pentry minsize="1" maxsize="4">
<register name="d7"/>
</pentry>
<pentry minsize="5" maxsize="8">
<register name="e6"/>
</pentry>
<pentry minsize="1" maxsize="500" align="4">
<addr offset="0" space="stack"/>
</pentry>
<rule>
<datatype name="struct" minsize="17"/>
<convert_to_ptr/>
</rule>
</input>
<output>
<pentry minsize="4" maxsize="4" metatype="ptr">
<register name="a2"/>
</pentry>
<pentry minsize="1" maxsize="8" extension="inttype">
<pentry minsize="1" maxsize="4">
<register name="d2"/>
</pentry>
<pentry minsize="5" maxsize="8">
<register name="e2"/>
</pentry>
</output>