Revision: 5186
Author: [email protected]
Date: Thu Aug  5 08:54:25 2010
Log: Merge r5179 (Fix GCC 4.4.4 build) to trunk
Review URL: http://codereview.chromium.org/2856089
http://code.google.com/p/v8/source/detail?r=5186

Modified:
 /trunk/src/globals.h
 /trunk/src/heap.h
 /trunk/src/version.cc

=======================================
--- /trunk/src/globals.h        Thu Jul 15 02:29:43 2010
+++ /trunk/src/globals.h        Thu Aug  5 08:54:25 2010
@@ -643,11 +643,14 @@
 #if defined(__GNUC__) && !defined(DEBUG)
 #if (__GNUC__ >= 4)
 #define INLINE(header) inline header  __attribute__((always_inline))
+#define NO_INLINE(header) header __attribute__((noinline))
 #else
 #define INLINE(header) inline __attribute__((always_inline)) header
+#define NO_INLINE(header) __attribute__((noinline)) header
 #endif
 #else
 #define INLINE(header) inline header
+#define NO_INLINE(header) header
 #endif

 // Feature flags bit positions. They are mostly based on the CPUID spec.
=======================================
--- /trunk/src/heap.h   Mon Aug  2 08:15:56 2010
+++ /trunk/src/heap.h   Thu Aug  5 08:54:25 2010
@@ -1195,12 +1195,12 @@
   static bool CreateInitialMaps();
   static bool CreateInitialObjects();

- // These four Create*EntryStub functions are here because of a gcc-4.4 bug
-  // that assigns wrong vtable entries.
-  static void CreateCEntryStub();
-  static void CreateJSEntryStub();
-  static void CreateJSConstructEntryStub();
-  static void CreateRegExpCEntryStub();
+ // These four Create*EntryStub functions are here and forced to not be inlined
+  // because of a gcc-4.4 bug that assigns wrong vtable entries.
+  NO_INLINE(static void CreateCEntryStub());
+  NO_INLINE(static void CreateJSEntryStub());
+  NO_INLINE(static void CreateJSConstructEntryStub());
+  NO_INLINE(static void CreateRegExpCEntryStub());

   static void CreateFixedStubs();

=======================================
--- /trunk/src/version.cc       Thu Aug  5 07:53:39 2010
+++ /trunk/src/version.cc       Thu Aug  5 08:54:25 2010
@@ -35,7 +35,7 @@
 #define MAJOR_VERSION     2
 #define MINOR_VERSION     3
 #define BUILD_NUMBER      5
-#define PATCH_LEVEL       1
+#define PATCH_LEVEL       2
 #define CANDIDATE_VERSION false

 // Define SONAME to have the SCons build the put a specific SONAME into the

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to