Changeset 3458


Ignore:
Timestamp:
Feb 29, 2008, 9:41:03 PM (13 years ago)
Author:
yura
Message:
  • Show variables in debugger.
  • Symbols with names prints as &NAME.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • to-imperative/trunk/compiler/rfp_asail_jbc.rf

    r3455 r3458  
    200200  <Get &Block_Tables> : e.block_tables,
    201201  e.block_tables : e s.block_table,
    202   <Store &Block_Tables e.block_tables <TableCopy s.block_table>>;
     202  <TableCopy s.block_table> :: s.copy_block_table,
     203  <Label> :: s.start,
     204  <MVvisitLabel <MV> s.start>,
     205  <Bind s.copy_block_table (START) (s.start)>,
     206  <Store &Block_Tables e.block_tables s.copy_block_table>;
    203207
    204208Pop_Block_Table =
     
    206210  <Lookup s.block_table2 "VAR-INDEX"> : s.i,
    207211  <Bind s.block_table1 ("VAR-INDEX") (s.i)>,
    208   <Store &Block_Tables e.block_tables s.block_table1>;
     212  <Store &Block_Tables e.block_tables s.block_table1>,
     213  <Label> :: s.stop,
     214  <MVvisitLabel <MV> s.stop>,
     215  <Lookup s.block_table2 START> : s.start,
     216  {
     217    <Entries s.block_table2> : e ((VAR t.var) (s.type s.ind)) e,
     218      # <IsInTable s.block_table1 VAR t.var>,
     219      t.var : (e (e.name)),
     220      s.type : \{
     221        Expr = <MVvisitLocalVariable <MV> <ToWord e.name> "Lorg/refal/plus/Expr;" <Null> s.start s.stop sind>;
     222        Result = <MVvisitLocalVariable <MV> <ToWord e.name> "Lorg/refal/plus/Result;" <Null> s.start s.stop sind>;
     223      },
     224      $fail;
     225    ;
     226  };
    209227
    210228Get_Block_Table =
     
    313331        <AnnotationVisitor.visitEnd s.aw>;;
    314332    },
    315     <Store &FuncName s.name> <Init_Block_Table> <Bind_Vars Expr e.args> <Bind_Vars Result e.ress>,
     333    <Store &FuncName s.name> <Init_Block_Table> <Push_Block_Table> <Bind_Vars Expr e.args> <Bind_Vars Result e.ress>,
    316334    <Body_To_JBC e.body>,
     335    <Pop_Block_Table>
    317336    s.tag : {
    318337      FUNC  = <MVvisitInsn <MV> &RETURN>;
Note: See TracChangeset for help on using the changeset viewer.