src/cpu/x86/vm/x86_64.ad

changeset 598
885ed790ecf0
parent 580
f3de1255b035
child 599
c436414a719e
     1.1 --- a/src/cpu/x86/vm/x86_64.ad	Tue May 20 06:32:58 2008 -0700
     1.2 +++ b/src/cpu/x86/vm/x86_64.ad	Wed May 21 10:45:07 2008 -0700
     1.3 @@ -6044,10 +6044,9 @@
     1.4  %}
     1.5  
     1.6  // Load Compressed Pointer
     1.7 -instruct loadN(rRegN dst, memory mem, rFlagsReg cr)
     1.8 +instruct loadN(rRegN dst, memory mem)
     1.9  %{
    1.10     match(Set dst (LoadN mem));
    1.11 -   effect(KILL cr);
    1.12  
    1.13     ins_cost(125); // XXX
    1.14     format %{ "movl    $dst, $mem\t# compressed ptr" %}
    1.15 @@ -6064,7 +6063,7 @@
    1.16  instruct loadKlass(rRegP dst, memory mem)
    1.17  %{
    1.18    match(Set dst (LoadKlass mem));
    1.19 -  predicate(!n->in(MemNode::Address)->bottom_type()->is_narrow());
    1.20 +  predicate(!n->in(MemNode::Address)->bottom_type()->is_ptr_to_narrowoop());
    1.21  
    1.22    ins_cost(125); // XXX
    1.23    format %{ "movq    $dst, $mem\t# class" %}
    1.24 @@ -6074,10 +6073,11 @@
    1.25  %}
    1.26  
    1.27  // Load Klass Pointer
    1.28 -instruct loadKlassComp(rRegP dst, memory mem)
    1.29 +instruct loadKlassComp(rRegP dst, memory mem, rFlagsReg cr)
    1.30  %{
    1.31    match(Set dst (LoadKlass mem));
    1.32 -  predicate(n->in(MemNode::Address)->bottom_type()->is_narrow());
    1.33 +  predicate(n->in(MemNode::Address)->bottom_type()->is_ptr_to_narrowoop());
    1.34 +  effect(KILL cr);
    1.35  
    1.36    ins_cost(125); // XXX
    1.37    format %{ "movl    $dst, $mem\t# compressed class\n\t"
    1.38 @@ -6358,8 +6358,9 @@
    1.39    ins_pipe(ialu_reg);
    1.40  %}
    1.41  
    1.42 -instruct loadConN(rRegN dst, immN src) %{
    1.43 +instruct loadConN(rRegN dst, immN src, rFlagsReg cr) %{
    1.44    match(Set dst src);
    1.45 +  effect(KILL cr);
    1.46  
    1.47    ins_cost(125);
    1.48    format %{ "movq    $dst, $src\t# compressed ptr\n\t"
    1.49 @@ -6633,10 +6634,9 @@
    1.50  %}
    1.51  
    1.52  // Store Compressed Pointer
    1.53 -instruct storeN(memory mem, rRegN src, rFlagsReg cr)
    1.54 +instruct storeN(memory mem, rRegN src)
    1.55  %{
    1.56    match(Set mem (StoreN mem src));
    1.57 -  effect(KILL cr);
    1.58  
    1.59    ins_cost(125); // XXX
    1.60    format %{ "movl    $mem, $src\t# ptr" %}

mercurial