< prev index next >

src/hotspot/cpu/s390/s390.ad

Print this page
rev 51802 : [mq]: crash_C2_method.patch

@@ -874,10 +874,17 @@
     // NOTE: We set the table base offset here because users might be
     // emitted before MachConstantBaseNode.
     Compile::ConstantTable& constant_table = C->constant_table();
     constant_table.set_table_base_offset(constant_table.calculate_table_base_offset());
   }
+
+#ifndef PRODUCT
+  ciMethod *currMethod = C->method();
+  if (currMethod && currMethod->has_option("crashOnEntry")) {
+    __ z_illtrap();
+  }
+#endif
 }
 
 uint MachPrologNode::size(PhaseRegAlloc *ra_) const {
   // Variable size. Determine dynamically.
   return MachNode::size(ra_);

@@ -902,10 +909,18 @@
 #endif
 
 void MachEpilogNode::emit(CodeBuffer &cbuf, PhaseRegAlloc *ra_) const {
   MacroAssembler _masm(&cbuf);
   Compile* C = ra_->C;
+  
+#ifndef PRODUCT
+  ciMethod *currMethod = C->method();
+  if (currMethod && currMethod->has_option("crashOnExit")) {
+    __ z_illtrap();
+  }
+#endif
+  
   __ verify_thread();
 
   // If this does safepoint polling, then do it here.
   bool need_polling = do_polling() && C->is_method_compilation();
 
< prev index next >