Skip to content
Permalink
Browse files

8234391: C2: Generic vector operands

Reviewed-by: vlivanov, sviswanathan, thartmann, jrose
  • Loading branch information
Jatin Bhateja
Jatin Bhateja committed Dec 5, 2019
1 parent f33e2e9 commit 979cd452ab3a6b21bbd382cbafa62acb674e0a66
@@ -2293,6 +2293,24 @@ const bool Matcher::require_postalloc_expand = false;
// the cpu only look at the lower 5/6 bits anyway?
const bool Matcher::need_masked_shift_count = false;

// No support for generic vector operands.
const bool Matcher::supports_generic_vector_operands = false;

MachOper* Matcher::specialize_generic_vector_operand(MachOper* original_opnd, uint ideal_reg) {
ShouldNotReachHere(); // generic vector operands not supported
return NULL;
}

bool Matcher::is_generic_reg2reg_move(MachNode* m) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::is_generic_vector(MachOper* opnd) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

// This affects two different things:
// - how Decode nodes are matched
// - how ImplicitNullCheck opportunities are recognized
@@ -1077,6 +1077,24 @@ const bool Matcher::need_masked_shift_count = true;

const bool Matcher::convi2l_type_required = true;

// No support for generic vector operands.
const bool Matcher::supports_generic_vector_operands = false;

MachOper* Matcher::specialize_generic_vector_operand(MachOper* original_opnd, uint ideal_reg) {
ShouldNotReachHere(); // generic vector operands not supported
return NULL;
}

bool Matcher::is_generic_reg2reg_move(MachNode* m) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::is_generic_vector(MachOper* opnd) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

// Should the Matcher clone shifts on addressing modes, expecting them
// to be subsumed into complex addressing expressions or compute them
// into registers?
@@ -2426,6 +2426,24 @@ const bool Matcher::require_postalloc_expand = true;
// PowerPC requires masked shift counts.
const bool Matcher::need_masked_shift_count = true;

// No support for generic vector operands.
const bool Matcher::supports_generic_vector_operands = false;

MachOper* Matcher::specialize_generic_vector_operand(MachOper* original_opnd, uint ideal_reg) {
ShouldNotReachHere(); // generic vector operands not supported
return NULL;
}

bool Matcher::is_generic_reg2reg_move(MachNode* m) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::is_generic_vector(MachOper* opnd) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

// This affects two different things:
// - how Decode nodes are matched
// - how ImplicitNullCheck opportunities are recognized
@@ -1658,6 +1658,24 @@ const bool Matcher::require_postalloc_expand = false;
// Constant shift counts are handled in Ideal phase.
const bool Matcher::need_masked_shift_count = false;

// No support for generic vector operands.
const bool Matcher::supports_generic_vector_operands = false;

MachOper* Matcher::specialize_generic_vector_operand(MachOper* original_opnd, uint ideal_reg) {
ShouldNotReachHere(); // generic vector operands not supported
return NULL;
}

bool Matcher::is_generic_reg2reg_move(MachNode* m) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::is_generic_vector(MachOper* opnd) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

// Set this as clone_shift_expressions.
bool Matcher::narrow_oop_use_complex_address() {
if (CompressedOops::base() == NULL && CompressedOops::shift() == 0) return true;
@@ -1815,6 +1815,24 @@ const bool Matcher::require_postalloc_expand = false;
// the cpu only look at the lower 5/6 bits anyway?
const bool Matcher::need_masked_shift_count = false;

// No support for generic vector operands.
const bool Matcher::supports_generic_vector_operands = false;

MachOper* Matcher::specialize_generic_vector_operand(MachOper* original_opnd, uint ideal_reg) {
ShouldNotReachHere(); // generic vector operands not supported
return NULL;
}

bool Matcher::is_generic_reg2reg_move(MachNode* m) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::is_generic_vector(MachOper* opnd) {
ShouldNotReachHere(); // generic vector operands not supported
return false;
}

bool Matcher::narrow_oop_use_complex_address() {
assert(UseCompressedOops, "only for compressed oops code");
return false;

0 comments on commit 979cd45

Please sign in to comment.
You can’t perform that action at this time.