< prev index next >

src/hotspot/share/opto/vectornode.cpp

Print this page
rev 50140 : Vector cast support

*** 293,302 **** --- 293,312 ---- case Op_URShiftVI: case Op_URShiftVL: case Op_AndV: case Op_OrV: case Op_XorV: + case Op_VectorBlend: + case Op_VectorReinterpret: + case Op_VectorTest: + case Op_VectorMaskCmp: + case Op_VectorCastB2X: + case Op_VectorCastS2X: + case Op_VectorCastI2X: + case Op_VectorCastL2X: + case Op_VectorCastF2X: + case Op_VectorCastD2X: // When op is already vectorized, return that directly. return sopc; default: return 0; // Unimplemented
*** 482,495 **** case Op_AndV: return new AndVNode(n1, n2, vt); case Op_OrV: return new OrVNode (n1, n2, vt); case Op_XorV: return new XorVNode(n1, n2, vt); ! case Op_ConvertVF2VD: ! if (bt == T_DOUBLE) { ! return new ConvertVF2VDNode(n1, vt); ! } default: fatal("Missed vector creation for '%s'", NodeClassNames[vopc]); return NULL; } } --- 492,508 ---- case Op_AndV: return new AndVNode(n1, n2, vt); case Op_OrV: return new OrVNode (n1, n2, vt); case Op_XorV: return new XorVNode(n1, n2, vt); ! case Op_VectorCastB2X: return new VectorCastB2XNode(n1, vt); ! case Op_VectorCastS2X: return new VectorCastS2XNode(n1, vt); ! case Op_VectorCastI2X: return new VectorCastI2XNode(n1, vt); ! case Op_VectorCastL2X: return new VectorCastL2XNode(n1, vt); ! case Op_VectorCastF2X: return new VectorCastF2XNode(n1, vt); ! case Op_VectorCastD2X: return new VectorCastD2XNode(n1, vt); ! default: fatal("Missed vector creation for '%s'", NodeClassNames[vopc]); return NULL; } }
< prev index next >