boxing.factor: Swap first and second positions

flac
kusumotonorio 2020-01-20 20:47:16 +09:00 committed by Steve Ayerhart
parent dd6a82eb65
commit 93066f1868
No known key found for this signature in database
GPG Key ID: 5BFD39C5359E967D
1 changed files with 4 additions and 4 deletions

View File

@ -14,14 +14,14 @@ SYMBOLS: int-reg-reps float-reg-reps ;
: record-reg-reps ( reps -- reps )
dup ! reps: { { reg-rep on-stack? odd-register? } ... }
[ [ [ second not ] [ first int-rep? ] bi and ] count int-reg-reps +@ ]
[ [ [ second not ] [ first int-rep? not ] bi and ] count float-reg-reps +@ ]
[ [ [ first int-rep? ] [ second not ] bi and ] count int-reg-reps +@ ]
[ [ [ first int-rep? not ] [ second not ] bi and ] count float-reg-reps +@ ]
bi ;
: unrecord-reg-reps ( reps -- reps )
dup
[ [ [ second not ] [ first int-rep? ] bi and ] count -1 * int-reg-reps +@ ]
[ [ [ second not ] [ first int-rep? not ] bi and ] count -1 * float-reg-reps +@ ]
[ [ [ first int-rep? ] [ second not ] bi and ] count -1 * int-reg-reps +@ ]
[ [ [ first int-rep? not ] [ second not ] bi and ] count -1 * float-reg-reps +@ ]
bi ;
GENERIC: flatten-c-type ( c-type -- pairs )