From: John Benediktsson Date: Fri, 21 Nov 2014 19:56:17 +0000 (-0800) Subject: use swapd instead of [ swap ] dip. X-Git-Tag: unmaintained~3281 X-Git-Url: https://gitweb.factorcode.org/gitweb.cgi?p=factor.git;a=commitdiff_plain;h=44f31ee13e7ff69add15d1fece1d00f0e1103aaa use swapd instead of [ swap ] dip. --- diff --git a/basis/compiler/cfg/value-numbering/comparisons/comparisons.factor b/basis/compiler/cfg/value-numbering/comparisons/comparisons.factor index b92f3038b2..e2881c55ac 100644 --- a/basis/compiler/cfg/value-numbering/comparisons/comparisons.factor +++ b/basis/compiler/cfg/value-numbering/comparisons/comparisons.factor @@ -135,7 +135,7 @@ M: ##test-imm-branch rewrite } cond ; : swap-compare ( src1 src2 cc swap? -- src1 src2 cc ) - [ [ swap ] dip swap-cc ] when ; inline + [ swapd swap-cc ] when ; inline : (>compare-imm-branch) ( insn swap? -- src1 src2 cc ) [ [ src1>> ] [ src2>> ] [ cc>> ] tri ] dip swap-compare ; inline diff --git a/basis/cpu/ppc/assembler/assembler.factor b/basis/cpu/ppc/assembler/assembler.factor index e4d329e99b..36f737154a 100644 --- a/basis/cpu/ppc/assembler/assembler.factor +++ b/basis/cpu/ppc/assembler/assembler.factor @@ -336,29 +336,29 @@ M: integer BC ( bo bi target_addr -- ) -2 shift 0 0 16 b-insn ; : ISEL ( rt ra rb bc -- ) 15 0 31 a-insn ; ! 3.3.12 Fixed-Point Logical Instructions -: ANDI. ( ra rs ui -- ) [ swap ] dip 28 d-insn ; -: ANDIS. ( ra rs ui -- ) [ swap ] dip 29 d-insn ; -: ORI ( ra rs ui -- ) [ swap ] dip 24 d-insn ; -: ORIS ( ra rs ui -- ) [ swap ] dip 25 d-insn ; -: XORI ( ra rs ui -- ) [ swap ] dip 26 d-insn ; -: XORIS ( ra rs ui -- ) [ swap ] dip 27 d-insn ; -: AND ( ra rs rb -- ) [ swap ] dip 28 0 31 x-insn ; -: AND. ( ra rs rb -- ) [ swap ] dip 28 1 31 x-insn ; -: OR ( ra rs rb -- ) [ swap ] dip 444 0 31 x-insn ; -: OR. ( ra rs rb -- ) [ swap ] dip 444 1 31 x-insn ; -: XOR ( ra rs rb -- ) [ swap ] dip 316 0 31 x-insn ; -: XOR. ( ra rs rb -- ) [ swap ] dip 316 1 31 x-insn ; -: NAND ( ra rs rb -- ) [ swap ] dip 476 0 31 x-insn ; -: NAND. ( ra rs rb -- ) [ swap ] dip 476 1 31 x-insn ; -: NOR ( ra rs rb -- ) [ swap ] dip 124 0 31 x-insn ; -: NOR. ( ra rs rb -- ) [ swap ] dip 124 1 31 x-insn ; -: ANDC ( ra rs rb -- ) [ swap ] dip 60 0 31 x-insn ; -: ANDC. ( ra rs rb -- ) [ swap ] dip 60 1 31 x-insn ; -: EQV ( ra rs rb -- ) [ swap ] dip 284 0 31 x-insn ; -: EQV. ( ra rs rb -- ) [ swap ] dip 284 1 31 x-insn ; -: ORC ( ra rs rb -- ) [ swap ] dip 412 0 31 x-insn ; -: ORC. ( ra rs rb -- ) [ swap ] dip 412 1 31 x-insn ; -: CMPB ( ra rs rb -- ) [ swap ] dip 508 0 31 x-insn ; +: ANDI. ( ra rs ui -- ) swapd 28 d-insn ; +: ANDIS. ( ra rs ui -- ) swapd 29 d-insn ; +: ORI ( ra rs ui -- ) swapd 24 d-insn ; +: ORIS ( ra rs ui -- ) swapd 25 d-insn ; +: XORI ( ra rs ui -- ) swapd 26 d-insn ; +: XORIS ( ra rs ui -- ) swapd 27 d-insn ; +: AND ( ra rs rb -- ) swapd 28 0 31 x-insn ; +: AND. ( ra rs rb -- ) swapd 28 1 31 x-insn ; +: OR ( ra rs rb -- ) swapd 444 0 31 x-insn ; +: OR. ( ra rs rb -- ) swapd 444 1 31 x-insn ; +: XOR ( ra rs rb -- ) swapd 316 0 31 x-insn ; +: XOR. ( ra rs rb -- ) swapd 316 1 31 x-insn ; +: NAND ( ra rs rb -- ) swapd 476 0 31 x-insn ; +: NAND. ( ra rs rb -- ) swapd 476 1 31 x-insn ; +: NOR ( ra rs rb -- ) swapd 124 0 31 x-insn ; +: NOR. ( ra rs rb -- ) swapd 124 1 31 x-insn ; +: ANDC ( ra rs rb -- ) swapd 60 0 31 x-insn ; +: ANDC. ( ra rs rb -- ) swapd 60 1 31 x-insn ; +: EQV ( ra rs rb -- ) swapd 284 0 31 x-insn ; +: EQV. ( ra rs rb -- ) swapd 284 1 31 x-insn ; +: ORC ( ra rs rb -- ) swapd 412 0 31 x-insn ; +: ORC. ( ra rs rb -- ) swapd 412 1 31 x-insn ; +: CMPB ( ra rs rb -- ) swapd 508 0 31 x-insn ; : EXTSB ( ra rs -- ) swap 0 954 0 31 x-insn ; : EXTSB. ( ra rs -- ) swap 0 954 1 31 x-insn ; : EXTSH ( ra rs -- ) swap 0 922 0 31 x-insn ; @@ -376,7 +376,7 @@ M: integer BC ( bo bi target_addr -- ) -2 shift 0 0 16 b-insn ; : CNTLZD ( ra rs -- ) swap 0 58 0 31 x-insn ; : CNTLZD. ( ra rs -- ) swap 0 58 1 31 x-insn ; : POPCNTD ( ra rs -- ) swap 0 506 0 31 x-insn ; -: BPERMD ( ra rs rb -- ) [ swap ] dip 252 0 31 x-insn ; +: BPERMD ( ra rs rb -- ) swapd 252 0 31 x-insn ; ! 3.3.13.1 Fixed-Point Rotate and Shift Instructions : RLWINM ( ra rs sh mb me -- ) [ swap ] 3dip 0 21 m-insn ; @@ -417,27 +417,27 @@ M: integer BC ( bo bi target_addr -- ) -2 shift 0 0 16 b-insn ; tri* 3 swap 1 30 md-insn ; ! 3.3.13.2 Fixed-Point Shift Instructions -: SLW ( ra rs rb -- ) [ swap ] dip 24 0 31 x-insn ; -: SLW. ( ra rs rb -- ) [ swap ] dip 24 1 31 x-insn ; -: SRW ( ra rs rb -- ) [ swap ] dip 536 0 31 x-insn ; -: SRW. ( ra rs rb -- ) [ swap ] dip 536 1 31 x-insn ; -: SRAWI ( ra rs sh -- ) [ swap ] dip 824 0 31 x-insn ; -: SRAWI. ( ra rs sh -- ) [ swap ] dip 824 1 31 x-insn ; -: SRAW ( ra rs rb -- ) [ swap ] dip 792 0 31 x-insn ; -: SRAW. ( ra rs rb -- ) [ swap ] dip 792 1 31 x-insn ; +: SLW ( ra rs rb -- ) swapd 24 0 31 x-insn ; +: SLW. ( ra rs rb -- ) swapd 24 1 31 x-insn ; +: SRW ( ra rs rb -- ) swapd 536 0 31 x-insn ; +: SRW. ( ra rs rb -- ) swapd 536 1 31 x-insn ; +: SRAWI ( ra rs sh -- ) swapd 824 0 31 x-insn ; +: SRAWI. ( ra rs sh -- ) swapd 824 1 31 x-insn ; +: SRAW ( ra rs rb -- ) swapd 792 0 31 x-insn ; +: SRAW. ( ra rs rb -- ) swapd 792 1 31 x-insn ; ! 3.3.13.2.1 64-bit Fixed-Point Shift Instructions -: SLD ( ra rs rb -- ) [ swap ] dip 27 0 31 x-insn ; -: SLD. ( ra rs rb -- ) [ swap ] dip 27 1 31 x-insn ; -: SRD ( ra rs rb -- ) [ swap ] dip 539 0 31 x-insn ; -: SRD. ( ra rs rb -- ) [ swap ] dip 539 1 31 x-insn ; -: SRAD ( ra rs rb -- ) [ swap ] dip 794 0 31 x-insn ; -: SRAD. ( ra rs rb -- ) [ swap ] dip 794 1 31 x-insn ; +: SLD ( ra rs rb -- ) swapd 27 0 31 x-insn ; +: SLD. ( ra rs rb -- ) swapd 27 1 31 x-insn ; +: SRD ( ra rs rb -- ) swapd 539 0 31 x-insn ; +: SRD. ( ra rs rb -- ) swapd 539 1 31 x-insn ; +: SRAD ( ra rs rb -- ) swapd 794 0 31 x-insn ; +: SRAD. ( ra rs rb -- ) swapd 794 1 31 x-insn ; : SRADI ( ra rs sh -- ) - [ swap ] dip [ 0x1f bitand ] [ -5 shift ] bi + swapd [ 0x1f bitand ] [ -5 shift ] bi 413 swap 0 31 xs-insn ; : SRADI. ( ra rs sh -- ) - [ swap ] dip [ 0x1f bitand ] [ -5 shift ] bi + swapd [ 0x1f bitand ] [ -5 shift ] bi 413 swap 1 31 xs-insn ; ! 3.3.14 BCD Assist Instructions @@ -1336,8 +1336,8 @@ tri* 134 1 63 x-insn ; : EFSCFD ( rt rb -- ) 0 swap 719 4 evx-insn ; ! 10.0 Legacy Move Assist Instruction -: DLMZB ( ra rs rb -- ) [ swap ] dip 0 78 31 x-insn ; deprecated -: DLMZB. ( ra rs rb -- ) [ swap ] dip 1 78 31 x-insn ; deprecated +: DLMZB ( ra rs rb -- ) swapd 0 78 31 x-insn ; deprecated +: DLMZB. ( ra rs rb -- ) swapd 1 78 31 x-insn ; deprecated ! 11.0 Legacy Integer Multiply-Accumulate Instructions : MACCHW ( rt ra rb -- ) 0 172 0 4 xo-insn ; deprecated diff --git a/basis/cpu/x86/32/32.factor b/basis/cpu/x86/32/32.factor index cd532d34e2..5068e5cef8 100755 --- a/basis/cpu/x86/32/32.factor +++ b/basis/cpu/x86/32/32.factor @@ -101,7 +101,7 @@ M: x86.32 %load-stack-param ( dst rep n -- ) ] if ; M: x86.32 %store-stack-param ( src rep n -- ) - stack@ swap pick register? [ [ swap ] dip %copy ] [ + stack@ swap pick register? [ swapd %copy ] [ { { int-rep [ [ [ EAX ] dip ?spill-slot MOV ] [ EAX MOV ] bi* ] } { float-rep [ [ ?spill-slot FLDS ] [ FSTPS ] bi* ] } diff --git a/basis/typed/typed.factor b/basis/typed/typed.factor index a492a9b567..4a14e5d3b7 100644 --- a/basis/typed/typed.factor +++ b/basis/typed/typed.factor @@ -98,7 +98,7 @@ DEFER: make-boxer ! defining typed words MACRO: (typed) ( word def effect -- quot ) - [ swap ] dip + swapd [ nip effect-in-types swap [ [ unboxed-types ] [ make-boxer ] bi ] dip diff --git a/extra/compiler/cfg/gvn/comparisons/comparisons.factor b/extra/compiler/cfg/gvn/comparisons/comparisons.factor index 0730318ec6..da7a87e9c6 100644 --- a/extra/compiler/cfg/gvn/comparisons/comparisons.factor +++ b/extra/compiler/cfg/gvn/comparisons/comparisons.factor @@ -138,7 +138,7 @@ M: ##test-imm-branch rewrite } cond ; : swap-compare ( src1 src2 cc swap? -- src1 src2 cc ) - [ [ swap ] dip swap-cc ] when ; inline + [ swapd swap-cc ] when ; inline : (>compare-imm-branch) ( insn swap? -- src1 src2 cc ) [ [ src1>> ] [ src2>> ] [ cc>> ] tri ] dip swap-compare ; inline diff --git a/extra/redis/command-writer/command-writer.factor b/extra/redis/command-writer/command-writer.factor index 06a2cd92cb..d19d0ce69b 100644 --- a/extra/redis/command-writer/command-writer.factor +++ b/extra/redis/command-writer/command-writer.factor @@ -57,9 +57,9 @@ PRIVATE> : lpush ( value key -- ) 2array "LPUSH" write-command ; : llen ( key -- ) 1array "LLEN" write-command ; : lrange ( start end key -- ) - [ swap ] dip 3array "LRANGE" write-command ; + swapd 3array "LRANGE" write-command ; : ltrim ( start end key -- ) - [ swap ] dip 3array "LTRIM" write-command ; + swapd 3array "LTRIM" write-command ; : lindex ( integer key -- ) 2array "LINDEX" write-command ; : lset ( value index key -- ) 3array "LSET" write-command ; : lrem ( value amount key -- ) 3array "LREM" write-command ;