Annotation of researchv10no/cmd/sml/src/vax/vaxcoder.sig, revision 1.1.1.1

1.1       root        1: (* Copyright 1989 by AT&T Bell Laboratories *)
                      2: signature VAXCODER = sig
                      3: 
                      4: eqtype Label
                      5: 
                      6: val newlabel : unit -> Label
                      7: 
                      8: datatype Register = reg of int
                      9: 
                     10: datatype EA = direct of Register
                     11:            | autoinc of Register
                     12:            | autodec of Register
                     13:            | displace of int * Register
                     14:            | deferred of int * Register
                     15:            | immed of int
                     16:            | immedlab of Label
                     17:            | address of Label
                     18:            | index of EA * Register
                     19: 
                     20: val r0 : Register
                     21: val r1 : Register
                     22: val r2 : Register
                     23: val r3 : Register
                     24: val r4 : Register
                     25: val r5 : Register
                     26: val r6 : Register
                     27: val r7 : Register
                     28: val r8 : Register
                     29: val r9 : Register
                     30: val r10 : Register
                     31: val r11 : Register
                     32: val r12 : Register
                     33: val r13 : Register
                     34: val sp : Register
                     35: val pc : Register
                     36: 
                     37: val align : unit -> unit
                     38: val mark : unit -> unit
                     39: val define : Label -> unit
                     40: val emitstring : string -> unit
                     41: val realconst : string -> unit
                     42: val emitlong : int -> unit
                     43: 
                     44: val emitlab : int * Label -> unit
                     45: 
                     46: val jne : EA -> unit
                     47: val jbr : EA -> unit
                     48: val bbc : EA * EA * EA -> unit
                     49: val bbs : EA * EA * EA -> unit
                     50: val movl : EA * EA -> unit
                     51: val movq : EA * EA -> unit
                     52: val movb : EA * EA -> unit
                     53: val movzbl : EA * EA -> unit
                     54: val moval : EA * EA -> unit
                     55: val pushal : EA -> unit
                     56: val rsb : unit -> unit
                     57: val cmpl : EA * EA -> unit
                     58: val addl2 : EA * EA -> unit
                     59: val addl3 : EA * EA * EA -> unit
                     60: val subl2 : EA * EA -> unit
                     61: val subl3 : EA * EA * EA -> unit
                     62: val bisl3 : EA * EA * EA -> unit
                     63: val bicl3 : EA * EA * EA -> unit
                     64: val ashl : EA * EA * EA -> unit
                     65: val xorl3 : EA * EA * EA -> unit
                     66: val mull2 : EA * EA -> unit
                     67: val divl3 : EA * EA * EA -> unit
                     68: val divl2 : EA * EA -> unit
                     69: val jmp : EA -> unit
                     70: val brb : EA -> unit
                     71: val brw : EA -> unit
                     72: val beql : EA -> unit
                     73: val bneq : EA -> unit
                     74: val bgeq : EA -> unit
                     75: val bgtr : EA -> unit
                     76: val blss : EA -> unit
                     77: val bleq : EA -> unit
                     78: val sobgeq : EA * EA -> unit
                     79: 
                     80: val movg : EA * EA -> unit
                     81: val mnegg : EA * EA -> unit
                     82: val addg3 : EA * EA * EA -> unit
                     83: val subg3 : EA * EA * EA -> unit
                     84: val mulg3 : EA * EA * EA -> unit
                     85: val divg3 : EA * EA * EA -> unit
                     86: val cmpg : EA * EA -> unit
                     87: 
                     88: val push : EA -> unit
                     89: val pusha : EA -> unit
                     90: val pop : EA -> unit
                     91: 
                     92: val comment : string -> unit
                     93: 
                     94: end (* signature CODER *)
                     95: 
                     96: signature VAXMCODER = 
                     97: sig 
                     98:     structure Coder : VAXCODER
                     99:     val finish : unit -> string
                    100: end

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.