On this page:
asm-lang-v2/  undead
asm-lang-v2/  undead?
interp-asm-lang-v2/  undead
asm-lang-v2/  conflicts
asm-lang-v2/  conflicts?
interp-asm-lang-v2/  conflicts
8.10
3.1.3 v2 Register Allocation Languages

 (require cpsc411/langs/v2-reg-alloc) package: cpsc411-lib

asm-lang-v2/undead : grammar?

  p ::= (module info tail)
     
  info ::= (#:from-contract (info/c (locals (aloc ...)) (undead-out undead-set-tree?)))
     
  tail ::= (halt triv)
  | (begin effect ... tail)
     
  effect ::= (set! aloc triv)
  | (set! aloc_1 (binop aloc_1 triv))
  | (begin effect ... effect)
     
  triv ::= int64
  | aloc
     
  binop ::= *
  | +
     
  aloc ::= aloc?
     
  int64 ::= int64?

procedure

(asm-lang-v2/undead? a)  boolean?

  a : any/c
Decides whether a is a valid program in the asm-lang-v2/undead grammar, represented as a quoted datum. The first non-terminal in the grammar defines valid programs.
Evaluates a asm-lang-v2/undead program to a value.
  p ::= (module info tail)
     
  info ::= (#:from-contract (info/c (locals (aloc ...)) (conflicts ((aloc (aloc ...)) ...))))
     
  tail ::= (halt triv)
  | (begin effect ... tail)
     
  effect ::= (set! aloc triv)
  | (set! aloc_1 (binop aloc_1 triv))
  | (begin effect ... effect)
     
  triv ::= int64
  | aloc
     
  binop ::= *
  | +
     
  aloc ::= aloc?
     
  int64 ::= int64?

procedure

(asm-lang-v2/conflicts? a)  boolean?

  a : any/c
Decides whether a is a valid program in the asm-lang-v2/conflicts grammar, represented as a quoted datum. The first non-terminal in the grammar defines valid programs.
Evaluates a asm-lang-v2/conflicts program to a value.