src/share/vm/c1/c1_Canonicalizer.cpp

changeset 1939
b812ff5abc73
parent 1907
c18cbe5936b8
child 2138
d5d065957597
     1.1 --- a/src/share/vm/c1/c1_Canonicalizer.cpp	Thu Jun 03 14:20:27 2010 -0700
     1.2 +++ b/src/share/vm/c1/c1_Canonicalizer.cpp	Fri Jun 04 11:18:04 2010 -0700
     1.3 @@ -26,9 +26,11 @@
     1.4  #include "incls/_c1_Canonicalizer.cpp.incl"
     1.5  
     1.6  
     1.7 -static void do_print_value(Value* vp) {
     1.8 -  (*vp)->print_line();
     1.9 -}
    1.10 +class PrintValueVisitor: public ValueVisitor {
    1.11 +  void visit(Value* vp) {
    1.12 +    (*vp)->print_line();
    1.13 +  }
    1.14 +};
    1.15  
    1.16  void Canonicalizer::set_canonical(Value x) {
    1.17    assert(x != NULL, "value must exist");
    1.18 @@ -37,10 +39,11 @@
    1.19    // in the instructions).
    1.20    if (canonical() != x) {
    1.21      if (PrintCanonicalization) {
    1.22 -      canonical()->input_values_do(do_print_value);
    1.23 +      PrintValueVisitor do_print_value;
    1.24 +      canonical()->input_values_do(&do_print_value);
    1.25        canonical()->print_line();
    1.26        tty->print_cr("canonicalized to:");
    1.27 -      x->input_values_do(do_print_value);
    1.28 +      x->input_values_do(&do_print_value);
    1.29        x->print_line();
    1.30        tty->cr();
    1.31      }
    1.32 @@ -202,7 +205,7 @@
    1.33      // limit this optimization to current block
    1.34      if (value != NULL && in_current_block(conv)) {
    1.35        set_canonical(new StoreField(x->obj(), x->offset(), x->field(), value, x->is_static(),
    1.36 -                                   x->lock_stack(), x->state_before(), x->is_loaded(), x->is_initialized()));
    1.37 +                                       x->lock_stack(), x->state_before(), x->is_loaded(), x->is_initialized()));
    1.38        return;
    1.39      }
    1.40    }

mercurial