src/share/vm/opto/idealKit.hpp

changeset 1286
fc4be448891f
parent 435
a61af66fc99e
child 1383
89e0543e1737
child 1420
685e959d09ea
     1.1 --- a/src/share/vm/opto/idealKit.hpp	Wed Jul 15 13:37:35 2009 -0700
     1.2 +++ b/src/share/vm/opto/idealKit.hpp	Thu Jul 16 14:10:42 2009 -0700
     1.3 @@ -49,7 +49,7 @@
     1.4  // Example:
     1.5  //    Node* limit = ??
     1.6  //    IdealVariable i(kit), j(kit);
     1.7 -//    declares_done();
     1.8 +//    declarations_done();
     1.9  //    Node* exit = make_label(1); // 1 goto
    1.10  //    set(j, ConI(0));
    1.11  //    loop(i, ConI(0), BoolTest::lt, limit); {
    1.12 @@ -101,10 +101,7 @@
    1.13    Node* new_cvstate();                     // Create a new cvstate
    1.14    Node* cvstate() { return _cvstate; }     // current cvstate
    1.15    Node* copy_cvstate();                    // copy current cvstate
    1.16 -  void set_ctrl(Node* ctrl) { _cvstate->set_req(TypeFunc::Control, ctrl); }
    1.17  
    1.18 -  // Should this assert this is a MergeMem???
    1.19 -  void set_all_memory(Node* mem){ _cvstate->set_req(TypeFunc::Memory, mem); }
    1.20    void set_memory(Node* mem, uint alias_idx );
    1.21    void do_memory_merge(Node* merging, Node* join);
    1.22    void clear(Node* m);                     // clear a cvstate
    1.23 @@ -132,15 +129,17 @@
    1.24    Node* memory(uint alias_idx);
    1.25  
    1.26   public:
    1.27 -  IdealKit(PhaseGVN &gvn, Node* control, Node* memory, bool delay_all_transforms = false);
    1.28 +  IdealKit(PhaseGVN &gvn, Node* control, Node* memory, bool delay_all_transforms = false, bool has_declarations = false);
    1.29    ~IdealKit() {
    1.30      stop();
    1.31      drain_delay_transform();
    1.32    }
    1.33    // Control
    1.34    Node* ctrl()                          { return _cvstate->in(TypeFunc::Control); }
    1.35 +  void set_ctrl(Node* ctrl)             { _cvstate->set_req(TypeFunc::Control, ctrl); }
    1.36    Node* top()                           { return C->top(); }
    1.37    MergeMemNode* merged_memory()         { return _cvstate->in(TypeFunc::Memory)->as_MergeMem(); }
    1.38 +  void set_all_memory(Node* mem)        { _cvstate->set_req(TypeFunc::Memory, mem); }
    1.39    void set(IdealVariable& v, Node* rhs) { _cvstate->set_req(first_var + v.id(), rhs); }
    1.40    Node* value(IdealVariable& v)         { return _cvstate->in(first_var + v.id()); }
    1.41    void dead(IdealVariable& v)           { set(v, (Node*)NULL); }
    1.42 @@ -155,7 +154,7 @@
    1.43    Node* make_label(int goto_ct);
    1.44    void bind(Node* lab);
    1.45    void goto_(Node* lab, bool bind = false);
    1.46 -  void declares_done();
    1.47 +  void declarations_done();
    1.48    void drain_delay_transform();
    1.49  
    1.50    Node* IfTrue(IfNode* iff)  { return transform(new (C,1) IfTrueNode(iff)); }

mercurial