diff src/cpu/x86/vm/x86_64.ad @ 1914:ae065c367d93

6987135: Performance regression on Intel platform with 32-bits edition between 6u13 and 6u14. Summary: Use hardware DIV instruction for long division by constant when it is faster than code with multiply. Reviewed-by: never
author kvn
date Tue, 02 Nov 2010 09:00:37 -0700
parents 52e82a6bedaf
children 2f644f85485d
line wrap: on
line diff
--- a/src/cpu/x86/vm/x86_64.ad	Sat Oct 30 13:08:23 2010 -0700
+++ b/src/cpu/x86/vm/x86_64.ad	Tue Nov 02 09:00:37 2010 -0700
@@ -2065,6 +2065,13 @@
   return can_be_java_arg(reg);
 }
 
+bool Matcher::use_asm_for_ldiv_by_con( jlong divisor ) {
+  // In 64 bit mode a code which use multiply when
+  // devisor is constant is faster than hardware
+  // DIV instruction (it uses MulHiL).
+  return false;
+}
+
 // Register for DIVI projection of divmodI
 RegMask Matcher::divI_proj_mask() {
   return INT_RAX_REG_mask;