< prev index next >

src/share/vm/c1/c1_LIR.cpp

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2000, 2015, 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 * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. --- 1,7 ---- /* ! * Copyright (c) 2000, 2016, 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 * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation.
*** 40,116 **** Register LIR_OprDesc::as_register_hi() const { return FrameMap::cpu_rnr2reg(cpu_regnrHi()); } - #ifdef PPC32 - FloatRegister LIR_OprDesc::as_float_reg() const { - return FrameMap::nr2floatreg(fpu_regnr()); - } - - FloatRegister LIR_OprDesc::as_double_reg() const { - return FrameMap::nr2floatreg(fpu_regnrHi()); - } - // Reg2 unused. - LIR_Opr LIR_OprFact::double_fpu(int reg1, int reg2) { - assert(reg2 == -1 /*fnoreg*/, "Not used on this platform"); - return (LIR_Opr)(intptr_t)((reg << LIR_OprDesc::reg1_shift) | - (reg << LIR_OprDesc::reg2_shift) | - LIR_OprDesc::double_type | - LIR_OprDesc::fpu_register | - LIR_OprDesc::double_size); - } - #ifndef PRODUCT - #if defined(LIR_ADDRESS_PD_VERIFY) - void LIR_Address::verify() const { pd_verify(); } - #else - void LIR_Address::verify() const { - assert(scale() == times_1, "Scaled addressing mode not available on SPARC/PPC and should not be used"); - assert(disp() == 0 || index()->is_illegal(), "can't have both"); - assert(base()->is_single_cpu(), "wrong base operand"); - assert(index()->is_illegal() || index()->is_single_cpu(), "wrong index operand"); - assert(base()->type() == T_OBJECT || base()->type() == T_INT || base()->type() == T_METADATA, - "wrong type for addresses"); - } - #endif // (LIR_ADDRESS_PD_VERIFY - #endif // PRODUCT - #endif // PPC32 - - #ifdef ARM - FloatRegister LIR_OprDesc::as_float_reg() const { - return as_FloatRegister(fpu_regnr()); - } - FloatRegister LIR_OprDesc::as_double_reg() const { - return as_FloatRegister(fpu_regnrLo()); - } - #ifndef PRODUCT - #if defined(LIR_ADDRESS_PD_VERIFY) - void verify() const { pd_verify(); } - #else - void LIR_Address::verify() const { - assert(base()->is_single_cpu(), "wrong base operand"); - assert(index()->is_illegal() || index()->is_single_cpu(), "wrong index operand"); - assert(scale() == times_1, "Scaled addressing mode not available on PPC and should not be used"); - assert(disp() == 0 || index()->is_illegal(), "can't have both"); - assert(base()->type() == T_OBJECT || base()->type() == T_INT || base()->type() == T_METADATA, - "wrong type for addresses"); - } - #endif // LIR_ADDRESS_PD_VERIFY - #endif // PRODUCT - #endif // ARM - #ifdef ARM32 - LIR_Opr LIR_OprFact::double_fpu(int reg1, int reg2) { - assert(reg2 != -1 /*fnoreg*/, "Arm32 holds double in two regs."); - return (LIR_Opr)(intptr_t)((reg1 << LIR_OprDesc::reg1_shift) | - (reg2 << LIR_OprDesc::reg2_shift) | - LIR_OprDesc::double_type | - LIR_OprDesc::fpu_register | - LIR_OprDesc::double_size); - } - #endif // ARM32 - - LIR_Opr LIR_OprFact::illegalOpr = LIR_OprFact::illegal(); LIR_Opr LIR_OprFact::value_type(ValueType* type) { ValueTag tag = type->tag(); switch (tag) { --- 40,49 ----
< prev index next >