< prev index next >
src/share/vm/c1/c1_LIRGenerator.hpp
Print this page
rev 12121 : [mq]: all_changes.patch
*** 26,35 ****
--- 26,36 ----
#define SHARE_VM_C1_C1_LIRGENERATOR_HPP
#include "c1/c1_Instruction.hpp"
#include "c1/c1_LIR.hpp"
#include "ci/ciMethodData.hpp"
+ #include "utilities/macros.hpp"
#include "utilities/sizes.hpp"
// The classes responsible for code emission and register allocation
*** 358,368 ****
// the helper for generate_address
void add_large_constant(LIR_Opr src, int c, LIR_Opr dest);
// machine preferences and characteristics
! bool can_inline_as_constant(Value i) const;
bool can_inline_as_constant(LIR_Const* c) const;
bool can_store_as_constant(Value i, BasicType type) const;
LIR_Opr safepoint_poll_register();
--- 359,369 ----
// the helper for generate_address
void add_large_constant(LIR_Opr src, int c, LIR_Opr dest);
// machine preferences and characteristics
! bool can_inline_as_constant(Value i S390_ONLY(COMMA int bits = 20)) const;
bool can_inline_as_constant(LIR_Const* c) const;
bool can_store_as_constant(Value i, BasicType type) const;
LIR_Opr safepoint_poll_register();
*** 494,503 ****
--- 495,510 ----
static LIR_Opr exceptionOopOpr();
static LIR_Opr exceptionPcOpr();
static LIR_Opr divInOpr();
static LIR_Opr divOutOpr();
static LIR_Opr remOutOpr();
+ #ifdef S390
+ // On S390 we can do ldiv, lrem without RT call.
+ static LIR_Opr ldivInOpr();
+ static LIR_Opr ldivOutOpr();
+ static LIR_Opr lremOutOpr();
+ #endif
static LIR_Opr shiftCountOpr();
LIR_Opr syncLockOpr();
LIR_Opr syncTempOpr();
LIR_Opr atomicLockOpr();
*** 619,629 ****
void set_result(LIR_Opr opr);
void load_item();
void load_byte_item();
! void load_nonconstant();
// load any values which can't be expressed as part of a single store instruction
void load_for_store(BasicType store_type);
void load_item_force(LIR_Opr reg);
void dont_load_item() {
--- 626,636 ----
void set_result(LIR_Opr opr);
void load_item();
void load_byte_item();
! void load_nonconstant(S390_ONLY(int bits = 20));
// load any values which can't be expressed as part of a single store instruction
void load_for_store(BasicType store_type);
void load_item_force(LIR_Opr reg);
void dont_load_item() {
< prev index next >