scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

commit 4e795291b71f8bafe11169b7e28b5f86a130ed34
parent d3c575e8f23d24f15ad9b0bf8080234264a5e9c7
Author: Roberto E. Vargas Caballero <k0ga@shike2.com>
Date:   Thu, 17 May 2018 20:42:40 +0100

[as/i286] Add the first instruction to i286

Diffstat:
Mas/target/x86/x86.dat | 46+++++++++++++++++++++++++---------------------
1 file changed, 25 insertions(+), 21 deletions(-)

diff --git a/as/target/x86/x86.dat b/as/target/x86/x86.dat @@ -1,23 +1,27 @@ # Tab 16, tabs 16, :set ts=16 # op args size bytes format cpu -.DB imm8+ 0 none defb BITS16,BITS32,BITS64 -.DEFB imm8+ 0 none defb BITS16,BITS32,BITS64 -.BYTE imm8+ 0 none defb BITS16,BITS32,BITS64 -.DW imm16+ 0 none defw BITS16,BITS32,BITS64 -.DEFW imm16+ 0 none defw BITS16,BITS32,BITS64 -.SHORT imm16+ 0 none defw BITS16,BITS32,BITS64 -.WORD imm16+ 0 none defw BITS16 -.WORD imm32+ 0 none defd BITS32,BITS64 -.DD imm32+ 0 none defd BITS16,BITS32,BITS64 -.DEFD imm32+ 0 none defd BITS16,BITS32,BITS64 -.LONG imm32+ 0 none defd BITS16,BITS32 -.LONG imm64+ 0 none defq BITS64 -.INT imm32+ 0 none defd BITS32,BITS64 -.INT imm16+ 0 none defd BITS16 -.DQ imm64+ 0 none defq BITS16,BITS32,BITS64 -.DEFQ imm64+ 0 none defq BITS16,BITS32,BITS64 -.EQU imm16 0 none equ BITS16 -.EQU imm32 0 none equ BITS32 -.EQU imm64 0 none equ BITS64 -NOP none 1 0x90 noargs BITS16,BITS32,BITS64 -RET none 1 0xc3 noargs BITS16,BITS32,BITS64 +.DB imm8+ 0 none defb i286,i386,amd64 +.DEFB imm8+ 0 none defb i286,i386,amd64 +.BYTE imm8+ 0 none defb i286,i386,amd64 +.DW imm16+ 0 none defw i286,i386,amd64 +.DEFW imm16+ 0 none defw i286,i386,amd64 +.SHORT imm16+ 0 none defw i286,i386,amd64 +.WORD imm16+ 0 none defw i286 +.WORD imm32+ 0 none defd i386,amd64 +.DD imm32+ 0 none defd i286,i386,amd64 +.DEFD imm32+ 0 none defd i286,i386,amd64 +.LONG imm32+ 0 none defd i286,i386 +.LONG imm64+ 0 none defq amd64 +.INT imm32+ 0 none defd i386,amd64 +.INT imm16+ 0 none defd i286 +.DQ imm64+ 0 none defq i286,i386,amd64 +.DEFQ imm64+ 0 none defq i286,i386,amd64 +.EQU imm16 0 none equ i286 +.EQU imm32 0 none equ i386 +.EQU imm64 0 none equ amd64 +NOP none 1 0x90 noargs i286,i386,amd64 +RET none 1 0xc3 noargs i286,i386,amd64 + + +# 8 bit arithmetic operations +ADDB reg8,reg8 2 0x00,0xc0 reg2reg i286,i386,amd64