metasm/cpu/arc/main.rb in metasm-1.0.3 vs metasm/cpu/arc/main.rb in metasm-1.0.4

- old
+ new

@@ -38,11 +38,11 @@ # Interrupt Link Register 1 R29 (ILINK1) # Interrupt Link Register 2 R30 (ILINK2) # Branch Link Register R31 (BLINK) class GPR < Reg Sym = (0..64).map { |i| "r#{i}".to_sym } - def symbolic; Sym[@i] end + def symbolic(di=nil); Sym[@i] end Render = { 26 => 'gp', # global pointer, used to point to small sets of shared data throughout execution of a program 27 => 'fp', # frame pointer 28 => 'sp', # stak pointer @@ -67,11 +67,11 @@ end end class AUX < Reg - def symbolic; "aux#{i}".to_sym end + def symbolic(di=nil); "aux#{i}".to_sym end Render = { 0x00 => 'status', # Status register (Original ARCtangent-A4 processor format) 0x01 => 'semaphore', # Inter-process/Host semaphore register 0x02 => 'lp_start', # Loop start address (32-bit) @@ -160,11 +160,11 @@ def initialize(base, disp, sz) @base, @disp, @size = base, disp, sz end - def symbolic(orig) + def symbolic(di=nil) b = @base b = b.symbolic if b.kind_of? Reg if disp o = @disp @@ -172,10 +172,10 @@ e = Expression[b, :+, o].reduce else e = Expression[b].reduce end - Indirection[e, @size, orig] + Indirection[e, @size, (di.address if di)] end include Renderable def render