2010-05-16 03:43:02 -04:00
|
|
|
! Copyright (C) 2008, 2010 Slava Pestov.
|
2008-11-07 21:33:32 -05:00
|
|
|
! See http://factorcode.org/license.txt for BSD license.
|
2008-11-17 19:42:10 -05:00
|
|
|
USING: kernel layouts system math alien.c-types sequences
|
2010-05-16 03:43:02 -04:00
|
|
|
compiler.cfg.registers cpu.architecture cpu.x86.assembler
|
|
|
|
cpu.x86 cpu.x86.64 cpu.x86.assembler.operands ;
|
2011-09-18 21:25:06 -04:00
|
|
|
IN: cpu.x86.64.windows
|
2008-11-07 21:33:32 -05:00
|
|
|
|
2010-05-16 03:43:02 -04:00
|
|
|
M: x86.64 param-regs
|
|
|
|
drop {
|
|
|
|
{ int-regs { RCX RDX R8 R9 } }
|
|
|
|
{ float-regs { XMM0 XMM1 XMM2 XMM3 } }
|
|
|
|
} ;
|
2008-11-07 21:33:32 -05:00
|
|
|
|
2009-10-20 06:02:42 -04:00
|
|
|
M: x86.64 reserved-stack-space 4 cells ;
|
2008-11-07 21:33:32 -05:00
|
|
|
|
2009-02-12 07:25:07 -05:00
|
|
|
M: x86.64 return-struct-in-registers? ( c-type -- ? )
|
|
|
|
heap-size { 1 2 4 8 } member? ;
|
2008-11-17 14:34:37 -05:00
|
|
|
|
|
|
|
M: x86.64 value-struct? heap-size { 1 2 4 8 } member? ;
|
2008-11-08 22:40:47 -05:00
|
|
|
|
|
|
|
M: x86.64 dummy-stack-params? f ;
|
|
|
|
|
|
|
|
M: x86.64 dummy-int-params? t ;
|
|
|
|
|
|
|
|
M: x86.64 dummy-fp-params? t ;
|
2016-08-01 23:03:02 -04:00
|
|
|
|
|
|
|
M: x86.64 %prepare-var-args ( reg-inputs -- )
|
|
|
|
drop ;
|