# HG changeset patch
# User aph
# Date 1338460938 14400
#      Thu May 31 06:42:18 2012 -0400
# Node ID f678e6078f9a1ddde06b68475d55fc1dfa78707a
# Parent  41fd39ce5b9968cd6980ba60d77d17157473e437
Back out mistaken checkin of debug code.

diff --git a/make/linux/makefiles/fastdebug.make b/make/linux/makefiles/fastdebug.make
--- openjdk/hotspot/make/linux/makefiles/fastdebug.make
+++ openjdk/hotspot/make/linux/makefiles/fastdebug.make
@@ -31,7 +31,7 @@
 # (OPT_CFLAGS/SLOWER is also available, to alter compilation of buggy files)
 
 ifeq ($(BUILDARCH), ia64)
-  # Bug in GCC, causes hang.  -O1 will override the -O0 specified earlier
+  # Bug in GCC, causes hang.  -O1 will override the -O3 specified earlier
   OPT_CFLAGS/callGenerator.o += -O1
   OPT_CFLAGS/ciTypeFlow.o += -O1
   OPT_CFLAGS/compile.o += -O1
diff --git a/make/linux/makefiles/gcc.make b/make/linux/makefiles/gcc.make
--- openjdk/hotspot/make/linux/makefiles/gcc.make
+++ openjdk/hotspot/make/linux/makefiles/gcc.make
@@ -169,7 +169,7 @@
 CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@)) 
 
 # The flags to use for an Optimized g++ build
-OPT_CFLAGS += -O0
+OPT_CFLAGS += -O3
 
 # Hotspot uses very unstrict aliasing turn this optimization off
 OPT_CFLAGS += -fno-strict-aliasing
diff --git a/make/solaris/makefiles/gcc.make b/make/solaris/makefiles/gcc.make
--- openjdk/hotspot/make/solaris/makefiles/gcc.make
+++ openjdk/hotspot/make/solaris/makefiles/gcc.make
@@ -122,7 +122,7 @@
 CFLAGS_WARN/BYFILE = $(CFLAGS_WARN/$@)$(CFLAGS_WARN/DEFAULT$(CFLAGS_WARN/$@))  
 
 # The flags to use for an Optimized g++ build
-OPT_CFLAGS += -O0
+OPT_CFLAGS += -O3
 
 # Hotspot uses very unstrict aliasing turn this optimization off
 OPT_CFLAGS += -fno-strict-aliasing
diff --git a/src/cpu/zero/vm/asm_helper.cpp b/src/cpu/zero/vm/asm_helper.cpp
--- openjdk/hotspot/src/cpu/zero/vm/asm_helper.cpp
+++ openjdk/hotspot/src/cpu/zero/vm/asm_helper.cpp
@@ -403,8 +403,6 @@
     return thread->pending_exception();
 }
 
-extern "C" void ps();
-
 extern "C" oop Helper_SafePoint(JavaThread *thread)
 {
     {
@@ -414,15 +412,6 @@
     return thread->pending_exception();
 }
 
-extern "C" oop Helper_SafePoint2(JavaThread *thread)
-{
-    {
-      HandleMarkCleaner __hmc(thread);
-    }
-    SafepointSynchronize::block(thread);
-    return thread->pending_exception();
-}
-
 extern "C" void Helper_RaiseArrayBoundException(JavaThread *thread, int index)
 {
   char message[jintAsStringSize];
diff --git a/src/os/linux/vm/os_linux.cpp b/src/os/linux/vm/os_linux.cpp
--- openjdk/hotspot/src/os/linux/vm/os_linux.cpp
+++ openjdk/hotspot/src/os/linux/vm/os_linux.cpp
@@ -4206,11 +4206,8 @@
   Linux::fast_thread_clock_init();
 
   // Allocate a single page and mark it as readable for safepoint polling
-  julong foo = (julong) ::mmap(NULL, 65536, PROT_READ, 
-				 MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0);
-  address polling_page = (address)(foo & -65536L);
-  if ((julong)polling_page < foo)
-    polling_page += 65536;
+  address polling_page = (address) ::mmap(NULL, Linux::page_size(), PROT_READ, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
+  guarantee( polling_page != MAP_FAILED, "os::init_2: failed to allocate polling page" );
 
   os::set_polling_page( polling_page );
 
diff --git a/src/share/vm/gc_implementation/shared/markSweep.cpp b/src/share/vm/gc_implementation/shared/markSweep.cpp
--- openjdk/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp
+++ openjdk/hotspot/src/share/vm/gc_implementation/shared/markSweep.cpp
@@ -30,11 +30,6 @@
 #include "oops/objArrayKlass.inline.hpp"
 #include "oops/oop.inline.hpp"
 
-
-void *arse[2];
-
-void sa(void*a, void *b) { arse[0] = a; arse [1] = b; }
-
 Stack<oop>              MarkSweep::_marking_stack;
 Stack<DataLayout*>      MarkSweep::_revisit_mdo_stack;
 Stack<Klass*>           MarkSweep::_revisit_klass_stack;
diff --git a/src/share/vm/gc_implementation/shared/markSweep.inline.hpp b/src/share/vm/gc_implementation/shared/markSweep.inline.hpp
--- openjdk/hotspot/src/share/vm/gc_implementation/shared/markSweep.inline.hpp
+++ openjdk/hotspot/src/share/vm/gc_implementation/shared/markSweep.inline.hpp
@@ -43,15 +43,9 @@
   }
 }
 
-extern "C" void *arse[2];
-
-extern "C" void sa(void*a, void *b);
-
 template <class T> inline void MarkSweep::follow_root(T* p) {
   assert(!Universe::heap()->is_in_reserved(p),
          "roots shouldn't be things within the heap");
-  if (arse[0] <= (void *)p && arse[1] >= (void *)p)
-    fprintf(stderr, "Whip\n");
 #ifdef VALIDATE_MARK_SWEEP
   if (ValidateMarkSweep) {
     guarantee(!_root_refs_stack->contains(p), "should only be in here once");
diff --git a/src/share/vm/interpreter/bytecodeInterpreter.cpp b/src/share/vm/interpreter/bytecodeInterpreter.cpp
--- openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp
+++ openjdk/hotspot/src/share/vm/interpreter/bytecodeInterpreter.cpp
@@ -1513,13 +1513,7 @@
       CASE(_freturn):
       {
           // Allow a safepoint before returning to frame manager.
-    if ( SafepointSynchronize::is_synchronizing()) {
-        {
-          /* zap freed handles rather than GC'ing them */
-          HandleMarkCleaner __hmc(THREAD);
-        }
-        CALL_VM(SafepointSynchronize::block(THREAD), handle_exception);
-    }
+          SAFEPOINT;
 
           goto handle_return;
       }
diff --git a/src/share/vm/runtime/frame.cpp b/src/share/vm/runtime/frame.cpp
--- openjdk/hotspot/src/share/vm/runtime/frame.cpp
+++ openjdk/hotspot/src/share/vm/runtime/frame.cpp
@@ -785,9 +785,6 @@
       }
       if (in_stack) {
         _f->do_oop(addr);
-      } else {
-	fprintf(stderr, "Arse! %p\n",
-		_fr->interpreter_frame_tos_address());
       }
     }
   }
diff --git a/src/share/vm/runtime/vmThread.cpp b/src/share/vm/runtime/vmThread.cpp
--- openjdk/hotspot/src/share/vm/runtime/vmThread.cpp
+++ openjdk/hotspot/src/share/vm/runtime/vmThread.cpp
@@ -256,39 +256,6 @@
   }
 }
 
-class BangerThread : NamedThread
-{
-public:
-
-  static BangerThread *the_thread;
-
-  static void create() {
-    the_thread = new BangerThread();
-    os::create_thread (the_thread, os::watcher_thread);
-    Thread::start(the_thread);
-  }
-
-  BangerThread() : NamedThread() {
-    set_name("banger");
-  }
-
-  void run() {
-    struct timespec req;
-    req.tv_nsec = 0.5e9;
-    req.tv_sec = 0;
-
-    for (;;)
-      {
-	nanosleep(&req, NULL);
-	// VM_ForceSafepoint op;
-	// VMThread::execute(&op);
-	Universe::heap()->collect(GCCause::_java_lang_system_gc);
-      }
-  }
-};
-
-BangerThread *BangerThread::the_thread;
-
 void VMThread::run() {
   assert(this == vm_thread(), "check");
 
@@ -313,8 +280,6 @@
   // possible to set the VM thread priority higher than any Java thread.
   os::set_native_priority( this, prio );
 
-  BangerThread::create();
-
   // Wait for VM_Operations until termination
   this->loop();
 
