src/cpu/sparc/vm/jniFastGetField_sparc.cpp

changeset 9669
32bc598624bd
parent 4323
f0c2369fda5a
child 9703
2fdf635bcf28
     1.1 --- a/src/cpu/sparc/vm/jniFastGetField_sparc.cpp	Thu Nov 05 11:42:42 2015 +0100
     1.2 +++ b/src/cpu/sparc/vm/jniFastGetField_sparc.cpp	Tue May 07 20:38:26 2019 +0000
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 2004, 2017, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -68,6 +68,7 @@
    1.11    __ andcc (G4, 1, G0);
    1.12    __ br (Assembler::notZero, false, Assembler::pn, label1);
    1.13    __ delayed()->srl (O2, 2, O4);
    1.14 +  __ andn (O1, JNIHandles::weak_tag_mask, O1);
    1.15    __ ld_ptr (O1, 0, O5);
    1.16  
    1.17    assert(count < LIST_CAPACITY, "LIST_CAPACITY too small");
    1.18 @@ -147,6 +148,7 @@
    1.19    __ andcc (G4, 1, G0);
    1.20    __ br (Assembler::notZero, false, Assembler::pn, label1);
    1.21    __ delayed()->srl (O2, 2, O4);
    1.22 +  __ andn (O1, JNIHandles::weak_tag_mask, O1);
    1.23    __ ld_ptr (O1, 0, O5);
    1.24    __ add (O5, O4, O5);
    1.25  
    1.26 @@ -219,6 +221,7 @@
    1.27    __ andcc (G4, 1, G0);
    1.28    __ br (Assembler::notZero, false, Assembler::pn, label1);
    1.29    __ delayed()->srl (O2, 2, O4);
    1.30 +  __ andn (O1, JNIHandles::weak_tag_mask, O1);
    1.31    __ ld_ptr (O1, 0, O5);
    1.32  
    1.33    assert(count < LIST_CAPACITY, "LIST_CAPACITY too small");

mercurial