< prev index next > src/hotspot/cpu/s390/c1_LIRGenerator_s390.cpp
Print this page
/*
! * Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2024 SAP SE. 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
/*
! * Copyright (c) 2016, 2026, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2016, 2024 SAP SE. 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
LIR_Opr tmp1 = FrameMap::Z_R12_oop_opr;
LIR_Opr tmp2 = FrameMap::Z_R13_oop_opr;
LIR_Opr tmp3 = reg;
LIR_Opr tmp4 = LIR_OprFact::illegalOpr;
LIR_Opr klass_reg = FrameMap::Z_R11_metadata_opr;
! new_instance(reg, x->klass(), x->is_unresolved(), tmp1, tmp2, tmp3, tmp4, klass_reg, info);
LIR_Opr result = rlock_result(x);
__ move(reg, result);
}
void LIRGenerator::do_NewTypeArray(NewTypeArray* x) {
LIR_Opr tmp1 = FrameMap::Z_R12_oop_opr;
LIR_Opr tmp2 = FrameMap::Z_R13_oop_opr;
LIR_Opr tmp3 = reg;
LIR_Opr tmp4 = LIR_OprFact::illegalOpr;
LIR_Opr klass_reg = FrameMap::Z_R11_metadata_opr;
! new_instance(reg, x->klass(), x->is_unresolved(), /* allow_inline */ false, tmp1, tmp2, tmp3, tmp4, klass_reg, info);
LIR_Opr result = rlock_result(x);
__ move(reg, result);
}
void LIRGenerator::do_NewTypeArray(NewTypeArray* x) {
LIR_Opr tmp2 = new_register(objectType);
LIR_Opr tmp3 = LIR_OprFact::illegalOpr;
__ checkcast(reg, obj.result(), x->klass(),
tmp1, tmp2, tmp3,
x->direct_compare(), info_for_exception, patching_info, stub,
! x->profiled_method(), x->profiled_bci());
}
void LIRGenerator::do_InstanceOf(InstanceOf* x) {
LIRItem obj(x->obj(), this);
LIR_Opr tmp2 = new_register(objectType);
LIR_Opr tmp3 = LIR_OprFact::illegalOpr;
__ checkcast(reg, obj.result(), x->klass(),
tmp1, tmp2, tmp3,
x->direct_compare(), info_for_exception, patching_info, stub,
! x->profiled_method(), x->profiled_bci(), /*is_null_free*/ false);
}
void LIRGenerator::do_InstanceOf(InstanceOf* x) {
LIRItem obj(x->obj(), this);
< prev index next >