Home
       i286.c - scc - simple c99 compiler
  HTML git clone git://git.simple-cc.org/scc
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
       i286.c (726B)
       ---
            1 #include <scc/mach.h>
            2 #include <scc/scc.h>
            3 
            4 #include "../../as.h"
            5 #include "../x86/proc.h"
            6 
            7 TUINT maxaddr = 0xFFFF;
            8 int endian = LITTLE_ENDIAN;
            9 int left2right = 0;
           10 
           11 void
           12 iarch(void)
           13 {
           14         static struct {
           15                 char *name;
           16                 char type;
           17         } regs[] = {
           18                 "CS", AREG_CS,
           19                 "DS", AREG_DS,
           20                 "SS", AREG_SS,
           21                 "ES", AREG_ES,
           22 
           23                 "AX", AREG_AX,
           24                 "AL", AREG_AL,
           25                 "AH", AREG_AH,
           26 
           27                 "BX", AREG_BX,
           28                 "BL", AREG_BL,
           29                 "BH", AREG_BH,
           30 
           31                 "CX", AREG_CX,
           32                 "CL", AREG_CL,
           33                 "CH", AREG_CH,
           34 
           35                 "DX", AREG_DX,
           36                 "DL", AREG_DL,
           37                 "DH", AREG_DH,
           38 
           39                 "SI", AREG_SI,
           40                 "DI", AREG_DI,
           41 
           42                 "SP", AREG_SP,
           43                 "BP", AREG_BP,
           44 
           45                 NULL
           46         }, *bp;
           47 
           48         for (bp = regs; bp->name; ++bp) {
           49                 Symbol *sym = lookup(bp->name);
           50                 sym->flags = FREG;
           51                 sym->value = bp->type;
           52         }
           53 }