fact: Fixpoint compile_aexp (symbols : list string) (e : aexpr0 string) : list assembly := match e with | avar s => [load (symbol_index symbols s)] | anum n => [push n] | aplus e1 e2 => compile_aexp symbols e1 ++ compile_aexp symbols e2 ++ [add] end.
imports: ZArith Arith List syntax little Lia