src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.phases.common/src/org/graalvm/compiler/phases/common/AddressLoweringByUsePhase.java
changeset 58299 6df94ce3ab2f
parent 52910 583fd71c47d6
equal deleted inserted replaced
58298:0152ad7b38b8 58299:6df94ce3ab2f
     1 /*
     1 /*
     2  * Copyright (c) 2017, 2018, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * Copyright (c) 2017, Red Hat Inc. All rights reserved.
     3  * Copyright (c) 2017, Red Hat Inc. All rights reserved.
     4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     5  *
     5  *
     6  * This code is free software; you can redistribute it and/or modify it
     6  * This code is free software; you can redistribute it and/or modify it
     7  * under the terms of the GNU General Public License version 2 only, as
     7  * under the terms of the GNU General Public License version 2 only, as
    67         for (Node node : graph.getNodes()) {
    67         for (Node node : graph.getNodes()) {
    68             AddressNode address;
    68             AddressNode address;
    69             AddressNode lowered;
    69             AddressNode lowered;
    70             if (node instanceof ReadNode) {
    70             if (node instanceof ReadNode) {
    71                 ReadNode readNode = (ReadNode) node;
    71                 ReadNode readNode = (ReadNode) node;
    72                 Stamp stamp = readNode.stamp(NodeView.DEFAULT);
    72                 Stamp stamp = readNode.getAccessStamp();
    73                 address = readNode.getAddress();
    73                 address = readNode.getAddress();
    74                 lowered = lowering.lower(readNode, stamp, address);
    74                 lowered = lowering.lower(readNode, stamp, address);
    75             } else if (node instanceof JavaReadNode) {
    75             } else if (node instanceof JavaReadNode) {
    76                 JavaReadNode javaReadNode = (JavaReadNode) node;
    76                 JavaReadNode javaReadNode = (JavaReadNode) node;
    77                 Stamp stamp = javaReadNode.stamp(NodeView.DEFAULT);
    77                 Stamp stamp = javaReadNode.stamp(NodeView.DEFAULT);
    78                 address = javaReadNode.getAddress();
    78                 address = javaReadNode.getAddress();
    79                 lowered = lowering.lower(javaReadNode, stamp, address);
    79                 lowered = lowering.lower(javaReadNode, stamp, address);
    80             } else if (node instanceof FloatingReadNode) {
    80             } else if (node instanceof FloatingReadNode) {
    81                 FloatingReadNode floatingReadNode = (FloatingReadNode) node;
    81                 FloatingReadNode floatingReadNode = (FloatingReadNode) node;
    82                 Stamp stamp = floatingReadNode.stamp(NodeView.DEFAULT);
    82                 Stamp stamp = floatingReadNode.getAccessStamp();
    83                 address = floatingReadNode.getAddress();
    83                 address = floatingReadNode.getAddress();
    84                 lowered = lowering.lower(floatingReadNode, stamp, address);
    84                 lowered = lowering.lower(floatingReadNode, stamp, address);
    85             } else if (node instanceof AbstractWriteNode) {
    85             } else if (node instanceof AbstractWriteNode) {
    86                 AbstractWriteNode abstractWriteNode = (AbstractWriteNode) node;
    86                 AbstractWriteNode abstractWriteNode = (AbstractWriteNode) node;
    87                 Stamp stamp = abstractWriteNode.value().stamp(NodeView.DEFAULT);
    87                 Stamp stamp = abstractWriteNode.getAccessStamp();
    88                 address = abstractWriteNode.getAddress();
    88                 address = abstractWriteNode.getAddress();
    89                 lowered = lowering.lower(abstractWriteNode, stamp, address);
    89                 lowered = lowering.lower(abstractWriteNode, stamp, address);
    90             } else if (node instanceof PrefetchAllocateNode) {
    90             } else if (node instanceof PrefetchAllocateNode) {
    91                 PrefetchAllocateNode prefetchAllocateNode = (PrefetchAllocateNode) node;
    91                 PrefetchAllocateNode prefetchAllocateNode = (PrefetchAllocateNode) node;
    92                 Stamp stamp = StampFactory.forKind(JavaKind.Object);
    92                 Stamp stamp = StampFactory.forKind(JavaKind.Object);