diff src/cpu/x86/vm/x86_64.ad @ 1575:3657cb01ffc5

6954029: Improve implicit null check generation with compressed oops Summary: Hoist DecodeN instruction above null check Reviewed-by: never, twisti
author kvn
date Wed, 02 Jun 2010 09:49:32 -0700
parents 2d127394260e
children e9ff18c4ace7
line wrap: on
line diff
--- a/src/cpu/x86/vm/x86_64.ad	Sat May 29 19:22:32 2010 -0700
+++ b/src/cpu/x86/vm/x86_64.ad	Wed Jun 02 09:49:32 2010 -0700
@@ -2037,6 +2037,11 @@
 // into registers?  True for Intel but false for most RISCs
 const bool Matcher::clone_shift_expressions = true;
 
+bool Matcher::narrow_oop_use_complex_address() {
+  assert(UseCompressedOops, "only for compressed oops code");
+  return (LogMinObjAlignmentInBytes <= 3);
+}
+
 // Is it better to copy float constants, or load them directly from
 // memory?  Intel can load a float constant from a direct address,
 // requiring no extra registers.  Most RISCs will have to materialize