.macro enter x mov \x, %rbp jmp *(%rbp) .endm .macro cell x .quad \x .endm .macro continue enter %rdi .endm .macro thunkenv arg, dest mov (8*(\arg+2))(%rbp), \dest .endm .macro enter_thunkenv arg mov (8*(\arg+2))(%rbp), %rbp jmp *(%rbp) .endm .macro .makethunk name .align 8 \name\()_info: cell THU_evacuate cell THU_scavenge cell 0 \name: .endm