src/cpu/sparc/vm/templateTable_sparc.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File hotspot Sdiff src/cpu/sparc/vm

src/cpu/sparc/vm/templateTable_sparc.cpp

Print this page


   1 /*
   2  * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *


  98         if (index == noreg ) {
  99           assert(Assembler::is_simm13(offset), "fix this code");
 100           __ store_heap_oop(val, base, offset);
 101         } else {
 102           __ store_heap_oop(val, base, index);
 103         }
 104         // No need for post barrier if storing NULL
 105         if (val != G0) {
 106           if (precise) {
 107             if (index == noreg) {
 108               __ add(base, offset, base);
 109             } else {
 110               __ add(base, index, base);
 111             }
 112           }
 113           __ card_write_barrier_post(base, val, tmp);
 114         }
 115       }
 116       break;
 117     case BarrierSet::ModRef:
 118     case BarrierSet::Other:
 119       ShouldNotReachHere();
 120       break;
 121     default      :
 122       ShouldNotReachHere();
 123 
 124   }
 125 }
 126 
 127 
 128 //----------------------------------------------------------------------------------------------------
 129 // Platform-dependent initialization
 130 
 131 void TemplateTable::pd_initialize() {
 132   // (none)
 133 }
 134 
 135 
 136 //----------------------------------------------------------------------------------------------------
 137 // Condition conversion
 138 Assembler::Condition ccNot(TemplateTable::Condition cc) {


   1 /*
   2  * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.
   8  *
   9  * This code is distributed in the hope that it will be useful, but WITHOUT
  10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12  * version 2 for more details (a copy is included in the LICENSE file that
  13  * accompanied this code).
  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *


  98         if (index == noreg ) {
  99           assert(Assembler::is_simm13(offset), "fix this code");
 100           __ store_heap_oop(val, base, offset);
 101         } else {
 102           __ store_heap_oop(val, base, index);
 103         }
 104         // No need for post barrier if storing NULL
 105         if (val != G0) {
 106           if (precise) {
 107             if (index == noreg) {
 108               __ add(base, offset, base);
 109             } else {
 110               __ add(base, index, base);
 111             }
 112           }
 113           __ card_write_barrier_post(base, val, tmp);
 114         }
 115       }
 116       break;
 117     case BarrierSet::ModRef:

 118       ShouldNotReachHere();
 119       break;
 120     default      :
 121       ShouldNotReachHere();
 122 
 123   }
 124 }
 125 
 126 
 127 //----------------------------------------------------------------------------------------------------
 128 // Platform-dependent initialization
 129 
 130 void TemplateTable::pd_initialize() {
 131   // (none)
 132 }
 133 
 134 
 135 //----------------------------------------------------------------------------------------------------
 136 // Condition conversion
 137 Assembler::Condition ccNot(TemplateTable::Condition cc) {


src/cpu/sparc/vm/templateTable_sparc.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File