florian
|
79dfd9fb51
+ MIPS: take care of setnoat
|
пре 5 година |
Jonas Maebe
|
880d438704
* renamed t<cpuname>procinfo to tcpuprocinfo for all targets, so we can
|
пре 8 година |
sergei
|
96dd464bf2
* Moved fixup_jmps to target-specific classes for powerpc,powerpc64 and MIPS, cleaned out remaining $ifdef's. A slight functionality change is that fixup_jmps is now called before adding the procedure end symbol, not after, but that should not matter.
|
пре 11 година |
Jonas Maebe
|
f101118cd6
* moved MIPS-specific tprocdef.total_local_size field to cpu-specific
|
пре 11 година |
sergei
|
404c3efa58
* MIPS: handle get_frame internally, so it sets pi_needs_stackframe flag on current procedure. This makes possible not to force pi_needs_stackframe on every procedure and thus omit saving/restoring $fp register when it is not necessary.
|
пре 12 година |
sergei
|
9494fadf08
* MIPS: set pi_do_call flag for assembler procedures with stackframes, so in PIC mode it further receives pi_needs_got in PIC mode and allocates the GP save temp.
|
пре 12 година |
sergei
|
89c9cdf6c4
+ MIPS: implemented parameter location reusing, eliminating second copy of (potentially large) records passed by value. When parameter is passed both in registers and stack, let it have a single LOC_REFERENCE location on callee side, and store relevant registers on stack (into 16-byte area reserved by ABI) early in prologue.
|
пре 12 година |
sergei
|
86637a9ff9
* MIPS: pi_needs_got is necessary when doing unsigned to float conversions (it uses a global constant) and also if procedure does any calls in PIC mode.
|
пре 12 година |
sergei
|
1c652eb8f9
MIPS procinfo improvements:
|
пре 12 година |
sergei
|
5812cf3b46
* MIPS: allocate 16-byte outgoing parameter area also for procedures declared as 'assembler' without 'nostackframe'. This is a half-measure because there is no way to determine correct size to allocate for such procedures (probably we must add some directive to specify it). The same generally applies to all targets with fixed stack, not just MIPS.
|
пре 12 година |
sergei
|
354ebb822a
* MIPS: fixed layout of stack frame in case procedure does only low-level calls (via a_call_name, etc.). A 16-byte outgoing parameter area must be allocated regardless of actual parameter count.
|
пре 12 година |
pierre
|
7bd7cf275c
handle po_nostackframe for calc_stack_size
|
пре 12 година |
pierre
|
a3ef2b42a8
Remove more TABs in sources
|
пре 13 година |
pierre
|
fc81979f61
set got at create of cs_create_pic is used
|
пре 13 година |
pierre
|
a892e2aa6f
set pi_needs_got always if cs_create_pic is on
|
пре 13 година |
pierre
|
aa8747f5c9
Add more information to TMipsProcInfo class
|
пре 13 година |
Jonas Maebe
|
0fc422f244
* moved definition of maxcpuregister and tcpuregisterset from cgbase to
|
пре 13 година |
pierre
|
a3184d7ff5
Merge of 21562 by Foxsen, needs_frame_pointer field added to TMIPSProcInfo
|
пре 13 година |
pierre
|
2e4703d454
Merge of revision 21553 by Foxsen.
|
пре 13 година |
pierre
|
550bbb0186
+ computed_local_size new longint field in TMIPSProcInfo
|
пре 13 година |
pierre
|
22eae1b337
* Stack setup for MIPS and MIPSEL
|
пре 13 година |
florian
|
25e82bb1af
* fix stack frame generation on mips(el)
|
пре 13 година |
florian
|
e5ebb2a26e
* started to integrate the code of David Zhang's MIPS code from fpc-mips on sf into fpc trunk
|
пре 15 година |