icode: iroutine knows its local registers
[nit.git] / src / icode / icode_base.nit
index 11d5a6f..f15b4a0 100644 (file)
@@ -51,6 +51,9 @@ class IRoutine
        # The closure declared
        readable writable var _closure_decls: nullable Sequence[IClosureDecl] = null
 
+       # The local variables (excluding params and result)
+       readable var _registers: Set[IRegister] = new ArraySet[IRegister]
+
        # The result of the routine
        readable var _result: nullable IRegister
 
@@ -192,14 +195,11 @@ special ICode0
        # The reason the abort occured
        # tests.first is the format
        readable var _texts: Array[String]
-       # The local property that has the abort (if any)
-       readable var _property_location: nullable MMLocalProperty
        # The module that has the abort
        readable var _module_location: MMModule
-       init(t: Array[String], pl: nullable MMLocalProperty, ml: MMModule)
+       init(t: Array[String], ml: MMModule)
        do
                _texts = t
-               _property_location = pl
                _module_location = ml
        end
 end