forked from KolibriOS/kolibrios
Fasm updated to 1.67.9
git-svn-id: svn://kolibrios.org@157 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
b239f46ecb
commit
69e4361cc8
@ -1,4 +1,5 @@
|
|||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix en >lang.inc
|
@echo lang fix en >lang.inc
|
||||||
@fasm fasm.asm fasm
|
@fasm fasm.asm fasm
|
||||||
|
@erase lang.inc
|
||||||
@pause
|
@pause
|
@ -1,4 +1,5 @@
|
|||||||
@erase lang.inc
|
@erase lang.inc
|
||||||
@echo lang fix ru >lang.inc
|
@echo lang fix ru >lang.inc
|
||||||
@fasm fasm.asm fasm
|
@fasm fasm.asm fasm
|
||||||
|
@erase lang.inc
|
||||||
@pause
|
@pause
|
@ -2006,6 +2006,12 @@ get_address_value:
|
|||||||
jne invalid_address
|
jne invalid_address
|
||||||
check_address_registers:
|
check_address_registers:
|
||||||
or al,ah
|
or al,ah
|
||||||
|
mov ah,[address_size]
|
||||||
|
and ah,0Fh
|
||||||
|
jz address_registers_sizes_ok
|
||||||
|
cmp al,ah
|
||||||
|
jne invalid_address
|
||||||
|
address_registers_sizes_ok:
|
||||||
cmp al,4
|
cmp al,4
|
||||||
je sib_allowed
|
je sib_allowed
|
||||||
cmp al,8
|
cmp al,8
|
||||||
|
@ -915,7 +915,7 @@ define_macro:
|
|||||||
mov ecx,4
|
mov ecx,4
|
||||||
rep movs dword [edi],[esi]
|
rep movs dword [edi],[esi]
|
||||||
mov edi,ebx
|
mov edi,ebx
|
||||||
jmp preprocess_current_line
|
jmp initial_preprocessing_ok
|
||||||
skip_macro_symbol:
|
skip_macro_symbol:
|
||||||
movzx eax,byte [esi]
|
movzx eax,byte [esi]
|
||||||
inc esi
|
inc esi
|
||||||
@ -1572,7 +1572,7 @@ use_instant_macro:
|
|||||||
sub edx,ebx
|
sub edx,ebx
|
||||||
mov ecx,edx
|
mov ecx,edx
|
||||||
call move_data
|
call move_data
|
||||||
jmp preprocess_current_line
|
jmp initial_preprocessing_ok
|
||||||
do_irp:
|
do_irp:
|
||||||
cmp byte [esi],1Ah
|
cmp byte [esi],1Ah
|
||||||
jne invalid_macro_arguments
|
jne invalid_macro_arguments
|
||||||
|
@ -1392,6 +1392,8 @@ instructions_6:
|
|||||||
dw simple_instruction_only64-assembler
|
dw simple_instruction_only64-assembler
|
||||||
db 'pushfw',9Ch
|
db 'pushfw',9Ch
|
||||||
dw simple_instruction_16bit-assembler
|
dw simple_instruction_16bit-assembler
|
||||||
|
db 'rdmsrq',32h
|
||||||
|
dw simple_extended_instruction_64bit-assembler
|
||||||
db 'rdtscp',1
|
db 'rdtscp',1
|
||||||
dw swapgs_instruction-assembler
|
dw swapgs_instruction-assembler
|
||||||
db 'repeat',0
|
db 'repeat',0
|
||||||
@ -1438,6 +1440,8 @@ instructions_6:
|
|||||||
dw simple_vmx_instruction-assembler
|
dw simple_vmx_instruction-assembler
|
||||||
db 'wbinvd',9
|
db 'wbinvd',9
|
||||||
dw simple_extended_instruction-assembler
|
dw simple_extended_instruction-assembler
|
||||||
|
db 'wrmsrq',30h
|
||||||
|
dw simple_extended_instruction_64bit-assembler
|
||||||
instructions_7:
|
instructions_7:
|
||||||
db 'clflush',111b
|
db 'clflush',111b
|
||||||
dw fxsave_instruction-assembler
|
dw fxsave_instruction-assembler
|
||||||
@ -1597,6 +1601,8 @@ instructions_7:
|
|||||||
dw simple_extended_instruction-assembler
|
dw simple_extended_instruction-assembler
|
||||||
db 'sysexit',35h
|
db 'sysexit',35h
|
||||||
dw simple_extended_instruction-assembler
|
dw simple_extended_instruction-assembler
|
||||||
|
db 'sysretq',07h
|
||||||
|
dw simple_extended_instruction_64bit-assembler
|
||||||
db 'ucomisd',2Eh
|
db 'ucomisd',2Eh
|
||||||
dw comisd_instruction-assembler
|
dw comisd_instruction-assembler
|
||||||
db 'ucomiss',2Eh
|
db 'ucomiss',2Eh
|
||||||
@ -1712,6 +1718,8 @@ instructions_8:
|
|||||||
dw amd_prefetch_instruction-assembler
|
dw amd_prefetch_instruction-assembler
|
||||||
db 'sysenter',34h
|
db 'sysenter',34h
|
||||||
dw simple_extended_instruction-assembler
|
dw simple_extended_instruction-assembler
|
||||||
|
db 'sysexitq',35h
|
||||||
|
dw simple_extended_instruction_64bit-assembler
|
||||||
db 'unpckhpd',15h
|
db 'unpckhpd',15h
|
||||||
dw sse_pd_instruction-assembler
|
dw sse_pd_instruction-assembler
|
||||||
db 'unpckhps',15h
|
db 'unpckhps',15h
|
@ -33,7 +33,7 @@
|
|||||||
; cannot simply be copied and put under another distribution licence
|
; cannot simply be copied and put under another distribution licence
|
||||||
; (including the GNU Public Licence).
|
; (including the GNU Public Licence).
|
||||||
|
|
||||||
VERSION_STRING equ "1.67.5"
|
VERSION_STRING equ "1.67.9"
|
||||||
|
|
||||||
VERSION_MAJOR = 1
|
VERSION_MAJOR = 1
|
||||||
VERSION_MINOR = 67
|
VERSION_MINOR = 67
|
||||||
|
@ -41,6 +41,11 @@ simple_instruction_64bit:
|
|||||||
mov al,48h
|
mov al,48h
|
||||||
stos word [edi]
|
stos word [edi]
|
||||||
jmp instruction_assembled
|
jmp instruction_assembled
|
||||||
|
simple_extended_instruction_64bit:
|
||||||
|
cmp [code_type],64
|
||||||
|
jne illegal_instruction
|
||||||
|
mov al,48h
|
||||||
|
stos byte [edi]
|
||||||
simple_extended_instruction:
|
simple_extended_instruction:
|
||||||
mov ah,al
|
mov ah,al
|
||||||
mov al,0Fh
|
mov al,0Fh
|
||||||
@ -4817,6 +4822,7 @@ movq_instruction:
|
|||||||
lods byte [esi]
|
lods byte [esi]
|
||||||
cmp al,','
|
cmp al,','
|
||||||
jne invalid_operand
|
jne invalid_operand
|
||||||
|
mov [operand_size],0
|
||||||
lods byte [esi]
|
lods byte [esi]
|
||||||
call get_size_operator
|
call get_size_operator
|
||||||
cmp al,10h
|
cmp al,10h
|
||||||
|
Loading…
Reference in New Issue
Block a user