.import foreign_function_call_active,data
.import current_control_stack_pointer,data
.import current_control_frame_pointer,data
.import current_binding_stack_pointer,data
.import dynamic_space_free_pointer,data
.import foreign_function_call_active,data
.import current_control_stack_pointer,data
.import current_control_frame_pointer,data
.import current_binding_stack_pointer,data
.import dynamic_space_free_pointer,data
- stw %rp,-0x14(%sr0,%sp)
- stwm %r3,0x40(%sr0,%sp)
- stw %r4,-0x3c(%sr0,%sp)
- stw %r5,-0x38(%sr0,%sp)
- stw %r6,-0x34(%sr0,%sp)
- stw %r7,-0x30(%sr0,%sp)
- stw %r8,-0x2c(%sr0,%sp)
- stw %r9,-0x28(%sr0,%sp)
- stw %r10,-0x24(%sr0,%sp)
- stw %r11,-0x20(%sr0,%sp)
- stw %r12,-0x1c(%sr0,%sp)
- stw %r13,-0x18(%sr0,%sp)
- stw %r14,-0x14(%sr0,%sp)
- stw %r15,-0x10(%sr0,%sp)
- stw %r16,-0xc(%sr0,%sp)
- stw %r17,-0x8(%sr0,%sp)
- stw %r18,-0x4(%sr0,%sp)
+ stw %rp,-0x14(%sr0,%sp)
+ stwm %r3,0x40(%sr0,%sp)
+ stw %r4,-0x3c(%sr0,%sp)
+ stw %r5,-0x38(%sr0,%sp)
+ stw %r6,-0x34(%sr0,%sp)
+ stw %r7,-0x30(%sr0,%sp)
+ stw %r8,-0x2c(%sr0,%sp)
+ stw %r9,-0x28(%sr0,%sp)
+ stw %r10,-0x24(%sr0,%sp)
+ stw %r11,-0x20(%sr0,%sp)
+ stw %r12,-0x1c(%sr0,%sp)
+ stw %r13,-0x18(%sr0,%sp)
+ stw %r14,-0x14(%sr0,%sp)
+ stw %r15,-0x10(%sr0,%sp)
+ stw %r16,-0xc(%sr0,%sp)
+ stw %r17,-0x8(%sr0,%sp)
+ stw %r18,-0x4(%sr0,%sp)
-
- ldw -0x54(%sr0,%sp),%rp
- ldw -0x4(%sr0,%sp),%r18
- ldw -0x8(%sr0,%sp),%r17
- ldw -0xc(%sr0,%sp),%r16
- ldw -0x10(%sr0,%sp),%r15
- ldw -0x14(%sr0,%sp),%r14
- ldw -0x18(%sr0,%sp),%r13
- ldw -0x1c(%sr0,%sp),%r12
- ldw -0x20(%sr0,%sp),%r11
- ldw -0x24(%sr0,%sp),%r10
- ldw -0x28(%sr0,%sp),%r9
- ldw -0x2c(%sr0,%sp),%r8
- ldw -0x30(%sr0,%sp),%r7
- ldw -0x34(%sr0,%sp),%r6
- ldw -0x38(%sr0,%sp),%r5
- ldw -0x3c(%sr0,%sp),%r4
- bv %r0(%rp)
- ldwm -0x40(%sr0,%sp),%r3
-
+ ldw -0x54(%sr0,%sp),%rp
+ ldw -0x4(%sr0,%sp),%r18
+ ldw -0x8(%sr0,%sp),%r17
+ ldw -0xc(%sr0,%sp),%r16
+ ldw -0x10(%sr0,%sp),%r15
+ ldw -0x14(%sr0,%sp),%r14
+ ldw -0x18(%sr0,%sp),%r13
+ ldw -0x1c(%sr0,%sp),%r12
+ ldw -0x20(%sr0,%sp),%r11
+ ldw -0x24(%sr0,%sp),%r10
+ ldw -0x28(%sr0,%sp),%r9
+ ldw -0x2c(%sr0,%sp),%r8
+ ldw -0x30(%sr0,%sp),%r7
+ ldw -0x34(%sr0,%sp),%r6
+ ldw -0x38(%sr0,%sp),%r5
+ ldw -0x3c(%sr0,%sp),%r4
+ bv %r0(%rp)
+ ldwm -0x40(%sr0,%sp),%r3
- * Trampolines.
- */
-
- .EXPORT closure_tramp
-closure_tramp:
- /* reg_FDEFN holds the fdefn object. */
- ldw FDEFN_FUN_OFFSET(0,reg_FDEFN),reg_LEXENV
- ldw CLOSURE_FUN_OFFSET(0,reg_LEXENV),reg_L0
- addi SIMPLE_FUN_CODE_OFFSET, reg_L0, reg_LIP
- bv,n 0(reg_LIP)
-
- .EXPORT undefined_tramp
-undefined_tramp:
- break trap_Error,0
- .byte 4
- .byte UNDEFINED_FUN_ERROR
- .byte 254
- .byte (0x20 + sc_DescriptorReg)
- .byte 1
- .align 4
-
-\f
-/*
+fun_end_breakpoint_end:
+
+/* FIX-lav: these are found in assem-rtns.lisp too, but
+ genesis.lisp has problem referencing them, so we keep
+ these old versions too. Lisp code cant jump to them
+ because it is an inter space jump but lisp do intra
+ space jumps */
+
+ .align 8
+ .EXPORT closure_tramp
+closure_tramp:
+ /* reg_FDEFN holds the fdefn object. */
+ ldw FDEFN_FUN_OFFSET(0,reg_FDEFN),reg_LEXENV
+ ldw CLOSURE_FUN_OFFSET(0,reg_LEXENV),reg_L0
+ addi SIMPLE_FUN_CODE_OFFSET, reg_L0, reg_LIP
+ bv,n 0(reg_LIP)
+
+ .align 8
+ .EXPORT undefined_tramp
+undefined_tramp:
+ break trap_Error,0
+ .byte 4
+ .byte UNDEFINED_FUN_ERROR
+ .byte 254
+ .byte (0x20 + sc_DescriptorReg)
+ .byte 1
+ .align 4
+