Submitted By: DJ Lucas (dj AT linuxfromscratch DOT org)
Date: 2005-04-23
Initial Package Version: 1.5.0
Origin: DJ Lucas (preprocessor macro fixes), Hamish Greig (assembler code
        fixes) and portions of the previous j2sdk-1.4.2 gcc33 and asm patches
        Additional minor fixes from bsd jdk15 experimental patch collection
Upstream Status: Not submitted
Description: Fixes syntax for use with gcc-3.4.2 or greater.

$LastChangedBy: bdubbs $
$Date: 2005-08-01 13:29:19 -0600 (Mon, 01 Aug 2005) $


diff -Naur jdk-build-orig/hotspot/src/cpu/i486/vm/i486.ad jdk-build/hotspot/src/cpu/i486/vm/i486.ad
--- jdk-build-orig/hotspot/src/cpu/i486/vm/i486.ad	2004-10-19 13:41:32.000000000 -0500
+++ jdk-build/hotspot/src/cpu/i486/vm/i486.ad	2005-04-23 22:00:49.708531848 -0500
@@ -246,10 +246,10 @@
 static jlong fp_signmask_pool[(4+1)*2]; // 4*128bits(data) + 128bits(alignment)
 
 // Static initialization during VM startup.
-static jlong *float_signmask_pool  = double_quadword(&fp_signmask_pool[1*2], 0x7FFFFFFF7FFFFFFF, 0x7FFFFFFF7FFFFFFF); 
-static jlong *double_signmask_pool = double_quadword(&fp_signmask_pool[2*2], 0x7FFFFFFFFFFFFFFF, 0x7FFFFFFFFFFFFFFF); 
-static jlong *float_signflip_pool  = double_quadword(&fp_signmask_pool[3*2], 0x8000000080000000, 0x8000000080000000); 
-static jlong *double_signflip_pool = double_quadword(&fp_signmask_pool[4*2], 0x8000000000000000, 0x8000000000000000); 
+static jlong *float_signmask_pool  = double_quadword(&fp_signmask_pool[1*2], 0x7FFFFFFF7FFFFFFFULL, 0x7FFFFFFF7FFFFFFFULL); 
+static jlong *double_signmask_pool = double_quadword(&fp_signmask_pool[2*2], 0x7FFFFFFFFFFFFFFFULL, 0x7FFFFFFFFFFFFFFFULL); 
+static jlong *float_signflip_pool  = double_quadword(&fp_signmask_pool[3*2], 0x8000000080000000ULL, 0x8000000080000000ULL); 
+static jlong *double_signflip_pool = double_quadword(&fp_signmask_pool[4*2], 0x8000000000000000ULL, 0x8000000000000000ULL); 
 
 // !!!!! Special hack to get all type of calls to specify the byte offset
 //       from the start of the call to the point where the return address
diff -Naur jdk-build-orig/hotspot/src/os_cpu/linux_i486/vm/atomic_linux_i486.inline.hpp jdk-build/hotspot/src/os_cpu/linux_i486/vm/atomic_linux_i486.inline.hpp
--- jdk-build-orig/hotspot/src/os_cpu/linux_i486/vm/atomic_linux_i486.inline.hpp	2004-10-19 13:41:46.000000000 -0500
+++ jdk-build/hotspot/src/os_cpu/linux_i486/vm/atomic_linux_i486.inline.hpp	2005-04-23 22:00:49.709531696 -0500
@@ -111,7 +111,7 @@
                     "cmpxchg8b (%5); xchgl %%ebx, %1"
                     : "=A" (old_value), "=r" (lo)
                     : "1" (lo), "c" (hi), "A" (compare_value), "r" (dest), "m" (mp)
-                    : "%ebx", "cc", "memory");
+                    : "cc", "memory");
   return old_value;
 }
 
diff -Naur jdk-build-orig/hotspot/src/share/vm/memory/dump.cpp jdk-build/hotspot/src/share/vm/memory/dump.cpp
--- jdk-build-orig/hotspot/src/share/vm/memory/dump.cpp	2004-10-19 13:42:14.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/memory/dump.cpp	2005-04-23 22:00:49.785520144 -0500
@@ -1035,7 +1035,7 @@
 // Support for a simple checksum of the contents of the class list
 // file to prevent trivial tampering. The algorithm matches that in
 // the MakeClassList program used by the J2SE build process.
-#define JSUM_SEED ((jlong)0xcafebabebabecafe)
+#define JSUM_SEED ((jlong)0xcafebabebabecafeULL)
 static jlong
 jsum(jlong start, const char *buf, const int len)
 {
diff -Naur jdk-build-orig/hotspot/src/share/vm/prims/jvmtiEventController.cpp jdk-build/hotspot/src/share/vm/prims/jvmtiEventController.cpp
--- jdk-build-orig/hotspot/src/share/vm/prims/jvmtiEventController.cpp	2004-10-19 13:42:32.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/prims/jvmtiEventController.cpp	2005-04-23 22:00:49.727528960 -0500
@@ -10,7 +10,7 @@
 # include "incls/_jvmtiEventController.cpp.incl"
 
 #ifdef JVMTI_TRACE
-#define EC_TRACE(out) if (JvmtiTrace::trace_event_controller()) { SafeResourceMark rm; tty->print_cr##out; } while (0)
+#define EC_TRACE(out) if (JvmtiTrace::trace_event_controller()) { SafeResourceMark rm; tty->print_cr out; } while (0)
 #else
 #define EC_TRACE(out)
 #endif /*JVMTI_TRACE */
diff -Naur jdk-build-orig/hotspot/src/share/vm/prims/jvmtiExport.cpp jdk-build/hotspot/src/share/vm/prims/jvmtiExport.cpp
--- jdk-build-orig/hotspot/src/share/vm/prims/jvmtiExport.cpp	2004-10-19 13:42:32.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/prims/jvmtiExport.cpp	2005-04-23 22:00:49.729528656 -0500
@@ -13,8 +13,8 @@
 extern struct JVMDI_Interface_1_ jvmdiTrace_Interface;  // temporary
 
 #ifdef JVMTI_TRACE
-#define EVT_TRACE(evt,out) if ((JvmtiTrace::event_trace_flags(evt) & JvmtiTrace::SHOW_EVENT_SENT) != 0) { SafeResourceMark rm; tty->print_cr##out; }
-#define EVT_TRIG_TRACE(evt,out) if ((JvmtiTrace::event_trace_flags(evt) & JvmtiTrace::SHOW_EVENT_TRIGGER) != 0) { SafeResourceMark rm; tty->print_cr##out; }
+#define EVT_TRACE(evt,out) if ((JvmtiTrace::event_trace_flags(evt) & JvmtiTrace::SHOW_EVENT_SENT) != 0) { SafeResourceMark rm; tty->print_cr out; }
+#define EVT_TRIG_TRACE(evt,out) if ((JvmtiTrace::event_trace_flags(evt) & JvmtiTrace::SHOW_EVENT_TRIGGER) != 0) { SafeResourceMark rm; tty->print_cr out; }
 #else
 #define EVT_TRIG_TRACE(evt,out)
 #define EVT_TRACE(evt,out)
diff -Naur jdk-build-orig/hotspot/src/share/vm/runtime/classFileParser.cpp jdk-build/hotspot/src/share/vm/runtime/classFileParser.cpp
--- jdk-build-orig/hotspot/src/share/vm/runtime/classFileParser.cpp	2004-10-19 13:42:34.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/runtime/classFileParser.cpp	2005-04-23 22:00:49.749525616 -0500
@@ -16,6 +16,9 @@
 
 // We add assert in debug mode when class format is not checked.
 
+#undef inline
+#undef __inline
+
 #ifdef ASSERT
 void inline assert_property(bool b, const char* msg, TRAPS) {
   if (!b) { fatal(msg); }
diff -Naur jdk-build-orig/hotspot/src/share/vm/runtime/globals_extension.hpp jdk-build/hotspot/src/share/vm/runtime/globals_extension.hpp
--- jdk-build-orig/hotspot/src/share/vm/runtime/globals_extension.hpp	2004-10-19 13:42:35.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/runtime/globals_extension.hpp	2005-04-23 22:00:49.766523032 -0500
@@ -110,7 +110,9 @@
 
 #define FLAG_SET_DEFAULT(name, value) ((name) = (value))
 
-#define FLAG_SET(type, name, value)   (CommandLineFlagsEx::##type##AtPut(FLAG_MEMBER_WITH_TYPE(name,type), (type)(value)))
+//#define FLAG_SET(type, name, value)   (CommandLineFlagsEx::##type##AtPut(FLAG_MEMBER_WITH_TYPE(name,type), (type)(value)))
+
+#define FLAG_SET(type, name, value)   (CommandLineFlagsEx::type##AtPut(FLAG_MEMBER_WITH_TYPE(name,type), (type)(value)))
 
 // Can't put the following in CommandLineFlags because
 // of a circular dependency on the enum definition.
diff -Naur jdk-build-orig/hotspot/src/share/vm/runtime/thread.hpp jdk-build/hotspot/src/share/vm/runtime/thread.hpp
--- jdk-build-orig/hotspot/src/share/vm/runtime/thread.hpp	2004-10-19 13:42:40.000000000 -0500
+++ jdk-build/hotspot/src/share/vm/runtime/thread.hpp	2005-04-23 22:00:49.863508288 -0500
@@ -459,9 +459,9 @@
   static ByteSize stack_base_offset()            { return byte_offset_of(Thread, _stack_base ); }
   static ByteSize stack_size_offset()            { return byte_offset_of(Thread, _stack_size ); }
 
-#define TLAB_FIELD_OFFSET(name) \
-  static ByteSize tlab_##name##_offset()            { return byte_offset_of(Thread, _tlab) + ThreadLocalAllocBuffer::##name##_offset(); }
-
+ #define TLAB_FIELD_OFFSET(name) \
+  static ByteSize tlab_##name##_offset()            { return byte_offset_of(Thread, _tlab) + ThreadLocalAllocBuffer::name##_offset(); }
+                                                                                 
   TLAB_FIELD_OFFSET(start)
   TLAB_FIELD_OFFSET(end)
   TLAB_FIELD_OFFSET(top)
@@ -470,7 +470,7 @@
   TLAB_FIELD_OFFSET(number_of_refills)
   TLAB_FIELD_OFFSET(fast_refill_waste)
   TLAB_FIELD_OFFSET(slow_allocations)
-
+                                                                                 
 #undef TLAB_FIELD_OFFSET
 
 };
diff -Naur jdk-build-orig/j2se/src/share/native/sun/font/bidi/uchardir.c jdk-build/j2se/src/share/native/sun/font/bidi/uchardir.c
--- jdk-build-orig/j2se/src/share/native/sun/font/bidi/uchardir.c	2004-10-19 14:00:29.000000000 -0500
+++ jdk-build/j2se/src/share/native/sun/font/bidi/uchardir.c	2005-04-23 22:00:49.000000000 -0500
@@ -34,6 +34,8 @@
 
 #include "uchardir.h"
 
+static UCharDirection u_getDirectionInternal(uint32_t);
+
 /* new 4.0 surrogate data */
 static uint32_t ASCII_START = 0x0;
 static uint32_t ASCII_LIMIT = 0x80;
diff -Naur jdk-build-orig/j2se/src/solaris/bin/java_md.c jdk-build/j2se/src/solaris/bin/java_md.c
--- jdk-build-orig/j2se/src/solaris/bin/java_md.c	2004-10-19 14:01:43.000000000 -0500
+++ jdk-build/j2se/src/solaris/bin/java_md.c	2005-04-23 22:00:49.000000000 -0500
@@ -1136,7 +1136,7 @@
                     : /* Inputs */
                     "m" (arg)
                     : /* Clobbers */
-                    "%eax", "%ebx", "%ecx", "%edx"
+                    "%eax", "%ecx", "%edx"
                     );
   *eaxp = value_of_eax;
   *ebxp = value_of_ebx;
diff -Naur jdk-build-orig/j2se/src/solaris/hpi/src/system_md.c jdk-build/j2se/src/solaris/hpi/src/system_md.c
--- jdk-build-orig/j2se/src/solaris/hpi/src/system_md.c	2004-10-19 14:02:04.000000000 -0500
+++ jdk-build/j2se/src/solaris/hpi/src/system_md.c	2005-04-23 22:00:49.000000000 -0500
@@ -23,6 +23,7 @@
 #include <dlfcn.h>
 
 #include "jni_md.h"
+#include "jvm_md.h"
 #include "mutex_md.h"
 
 #include "hpi_init.h"
diff -Naur jdk-build-orig/j2se/src/solaris/javavm/export/jvm_md.h jdk-build/j2se/src/solaris/javavm/export/jvm_md.h
--- jdk-build-orig/j2se/src/solaris/javavm/export/jvm_md.h	2004-10-19 14:02:04.000000000 -0500
+++ jdk-build/j2se/src/solaris/javavm/export/jvm_md.h	2005-04-23 22:00:49.000000000 -0500
@@ -48,7 +48,7 @@
 #define JVM_O_O_APPEND   O_APPEND
 #define JVM_O_EXCL       O_EXCL
 #define JVM_O_CREAT      O_CREAT
-#define JVM_O_DELETE     0x10000
+#define JVM_O_DELETE     0x1000000
 
 /* Signals */
 
diff -Naur jdk-build-orig/share/plugin/mozilla_headers_ns610/nscore.h jdk-build/share/plugin/mozilla_headers_ns610/nscore.h
--- jdk-build-orig/share/plugin/mozilla_headers_ns610/nscore.h	2001-05-21 11:34:20.000000000 -0500
+++ jdk-build/share/plugin/mozilla_headers_ns610/nscore.h	2005-04-23 22:00:49.000000000 -0500
@@ -192,6 +192,10 @@
   #define HAVE_CPP_2BYTE_WCHAR_T
 #endif
 
+#if defined(__GNUC__)
+  #define HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX
+#endif
+
   /* until we get an autoconf test for this, we'll assume it's on (since we're using it already) */
 #define HAVE_CPP_TYPENAME
 
diff -Naur jdk-build-orig/share/plugin/mozilla_headers_ns7/nscore.h jdk-build/share/plugin/mozilla_headers_ns7/nscore.h
--- jdk-build-orig/share/plugin/mozilla_headers_ns7/nscore.h	2002-09-07 12:12:44.000000000 -0500
+++ jdk-build/share/plugin/mozilla_headers_ns7/nscore.h	2005-04-23 22:00:49.000000000 -0500
@@ -202,6 +202,10 @@
   #define HAVE_CPP_2BYTE_WCHAR_T
 #endif
 
+#if defined(__GNUC__)
+  #define HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX
+#endif
+
   /* until we get an autoconf test for this, we'll assume it's on (since we're using it already) */
 #define HAVE_CPP_TYPENAME
 
