3007 __ end_a_stub(); 3008 return offset; 3009 } 3010 3011 // REQUIRED MATCHER CODE 3012 3013 //============================================================================= 3014 3015 const bool Matcher::match_rule_supported(int opcode) { 3016 3017 // TODO 3018 // identify extra cases that we might want to provide match rules for 3019 // e.g. Op_StrEquals and other intrinsics 3020 if (!has_match_rule(opcode)) { 3021 return false; 3022 } 3023 3024 return true; // Per default match rules are supported. 3025 } 3026 3027 int Matcher::regnum_to_fpu_offset(int regnum) 3028 { 3029 Unimplemented(); 3030 return 0; 3031 } 3032 3033 bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) 3034 { 3035 Unimplemented(); 3036 return false; 3037 } 3038 3039 const bool Matcher::isSimpleConstant64(jlong value) { 3040 // Will one (StoreL ConL) be cheaper than two (StoreI ConI)?. 3041 // Probably always true, even if a temp register is required. 3042 return true; 3043 } 3044 3045 // true just means we have fast l2f conversion 3046 const bool Matcher::convL2FSupported(void) { | 3007 __ end_a_stub(); 3008 return offset; 3009 } 3010 3011 // REQUIRED MATCHER CODE 3012 3013 //============================================================================= 3014 3015 const bool Matcher::match_rule_supported(int opcode) { 3016 3017 // TODO 3018 // identify extra cases that we might want to provide match rules for 3019 // e.g. Op_StrEquals and other intrinsics 3020 if (!has_match_rule(opcode)) { 3021 return false; 3022 } 3023 3024 return true; // Per default match rules are supported. 3025 } 3026 3027 const int Matcher::float_pressure_scale(void) { 3028 return 1; 3029 } 3030 3031 int Matcher::regnum_to_fpu_offset(int regnum) 3032 { 3033 Unimplemented(); 3034 return 0; 3035 } 3036 3037 bool Matcher::is_short_branch_offset(int rule, int br_size, int offset) 3038 { 3039 Unimplemented(); 3040 return false; 3041 } 3042 3043 const bool Matcher::isSimpleConstant64(jlong value) { 3044 // Will one (StoreL ConL) be cheaper than two (StoreI ConI)?. 3045 // Probably always true, even if a temp register is required. 3046 return true; 3047 } 3048 3049 // true just means we have fast l2f conversion 3050 const bool Matcher::convL2FSupported(void) { |