]> gitweb.factorcode.org Git - factor.git/commitdiff
cpu.x86.assembler: add segment override prefixes
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 1 Apr 2010 00:47:13 +0000 (20:47 -0400)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 1 Apr 2010 00:47:13 +0000 (20:47 -0400)
basis/cpu/x86/assembler/assembler-tests.factor
basis/cpu/x86/assembler/assembler.factor

index 531110da7bf2a36cc0ce568c39a0ca140bd71fee..0a6ae5a48464bccbf24a4f7fce93267e8f526029 100644 (file)
@@ -164,3 +164,5 @@ IN: cpu.x86.assembler.tests
 
 [ { 15 183 195 } ] [ [ EAX BX MOVZX ] { } make ] unit-test
 
+[ { 100 199 5 0 0 0 0 123 0 0 0 } ] [ [ 0 [] FS 123 MOV ] { } make ] unit-test
+
index b075b121a5c7c130f285af29ac3c3853c8ee1f31..32eeaaad1d76a0aa9ff60518592926005b6174dc 100644 (file)
@@ -188,6 +188,13 @@ M: register displacement, drop ;
 
 PRIVATE>
 
+! Segment override prefixes
+: CS ( -- ) HEX: 2e , ;
+: ES ( -- ) HEX: 26 , ;
+: SS ( -- ) HEX: 36 , ;
+: FS ( -- ) HEX: 64 , ;
+: GS ( -- ) HEX: 65 , ;
+
 ! Moving stuff
 GENERIC: PUSH ( op -- )
 M: register PUSH f HEX: 50 short-operand ;