< prev index next >
src/hotspot/share/opto/type.hpp
Print this page
@@ -761,17 +761,22 @@
//------------------------------TypeValue---------------------------------------
// Class of Value Type Types
class TypeValueType : public Type {
private:
ciValueKlass* _vk;
+ bool _larval;
protected:
- TypeValueType(ciValueKlass* vk) : Type(ValueType) { _vk = vk; }
+ TypeValueType(ciValueKlass* vk, bool larval)
+ : Type(ValueType),
+ _vk(vk), _larval(larval) {
+ }
public:
- static const TypeValueType* make(ciValueKlass* vk);
+ static const TypeValueType* make(ciValueKlass* vk, bool larval = false);
ciValueKlass* value_klass() const { return _vk; }
+ bool larval() const { return _larval; }
virtual bool eq(const Type* t) const;
virtual int hash() const; // Type specific hashing
virtual bool singleton(void) const; // TRUE if type is a singleton
virtual bool empty(void) const; // TRUE if type is vacuous
@@ -1878,10 +1883,12 @@
#define Op_AndX Op_AndL
#define Op_AddX Op_AddL
#define Op_SubX Op_SubL
#define Op_XorX Op_XorL
#define Op_URShiftX Op_URShiftL
+#define Op_LoadX Op_LoadL
+#define Op_StoreX Op_StoreL
// conversions
#define ConvI2X(x) ConvI2L(x)
#define ConvL2X(x) (x)
#define ConvX2I(x) ConvL2I(x)
#define ConvX2L(x) (x)
@@ -1926,10 +1933,12 @@
#define Op_AndX Op_AndI
#define Op_AddX Op_AddI
#define Op_SubX Op_SubI
#define Op_XorX Op_XorI
#define Op_URShiftX Op_URShiftI
+#define Op_LoadX Op_LoadI
+#define Op_StoreX Op_StoreI
// conversions
#define ConvI2X(x) (x)
#define ConvL2X(x) ConvL2I(x)
#define ConvX2I(x) (x)
#define ConvX2L(x) ConvI2L(x)
< prev index next >