diff graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java @ 16094:c0b8d395368b

Introduce LIRKind to accurately track oop references in backend.
author Roland Schatz <roland.schatz@oracle.com>
date Fri, 13 Jun 2014 11:47:44 +0200
parents 471e28b8f03b
children 5d468add216f
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Fri Jun 13 11:11:44 2014 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/nodes/CurrentJavaThreadNode.java	Fri Jun 13 11:47:44 2014 +0200
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -38,14 +38,17 @@
  */
 public final class CurrentJavaThreadNode extends FloatingNode implements LIRLowerable {
 
+    private LIRKind wordKind;
+
     private CurrentJavaThreadNode(Kind kind) {
         super(StampFactory.forKind(kind));
+        this.wordKind = LIRKind.value(kind);
     }
 
     @Override
     public void generate(NodeLIRBuilderTool gen) {
         Register rawThread = ((HotSpotLIRGenerator) gen.getLIRGeneratorTool()).getProviders().getRegisters().getThreadRegister();
-        gen.setResult(this, rawThread.asValue(this.getKind()));
+        gen.setResult(this, rawThread.asValue(wordKind));
     }
 
     private static int eetopOffset() {