Remove old workaround for Nokia's Harmattan GCC on Qt/ARM.
authorakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 7 Sep 2013 02:35:57 +0000 (02:35 +0000)
committerakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 7 Sep 2013 02:35:57 +0000 (02:35 +0000)
<https://webkit.org/b/37253>

Reviewed by Anders Carlsson.

Apparently this was a workaround for GCC getting stuck in an infinite loop
when building for ARM in a Nokia SDK over 2 years ago.

I think it's safe to remove this now, but if I'm wrong, and you're reading
this ChangeLog wondering why I did this to you, feel free to put it back in.

* wtf/PassRefPtr.h:
(WTF::refIfNotNull):
(WTF::derefIfNotNull):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155232 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WTF/ChangeLog
Source/WTF/wtf/PassRefPtr.h

index f6cf1737d5321127bf7f2a4c89fa21a08573b875..65889f59bb11d61420d6ec781ed1be92e8791f86 100644 (file)
@@ -1,3 +1,20 @@
+2013-09-06  Andreas Kling  <akling@apple.com>
+
+        Remove old workaround for Nokia's Harmattan GCC on Qt/ARM.
+        <https://webkit.org/b/37253>
+
+        Reviewed by Anders Carlsson.
+
+        Apparently this was a workaround for GCC getting stuck in an infinite loop
+        when building for ARM in a Nokia SDK over 2 years ago.
+
+        I think it's safe to remove this now, but if I'm wrong, and you're reading
+        this ChangeLog wondering why I did this to you, feel free to put it back in.
+
+        * wtf/PassRefPtr.h:
+        (WTF::refIfNotNull):
+        (WTF::derefIfNotNull):
+
 2013-09-06  Andreas Kling  <akling@apple.com>
 
         Remove unused RefPtr(PlacementNewAdopt) constructor.
index 1e1c777ad0d7ef036f39c42719ecb9a09ee8cf25..848fc5fd3fa1d08c8cf72137cb4c7e4d04ea3b32 100644 (file)
@@ -32,28 +32,18 @@ namespace WTF {
 
     inline void adopted(const void*) { }
 
-#if !(PLATFORM(QT) && CPU(ARM))
-    #define REF_DEREF_INLINE ALWAYS_INLINE
-#else
-    // Older version of gcc used by Harmattan SDK fails to build with ALWAYS_INLINE.
-    // See https://bugs.webkit.org/show_bug.cgi?id=37253 for details.
-    #define REF_DEREF_INLINE inline
-#endif
-
-    template<typename T> REF_DEREF_INLINE void refIfNotNull(T* ptr)
+    template<typename T> ALWAYS_INLINE void refIfNotNull(T* ptr)
     {
         if (LIKELY(ptr != 0))
             ptr->ref();
     }
 
-    template<typename T> REF_DEREF_INLINE void derefIfNotNull(T* ptr)
+    template<typename T> ALWAYS_INLINE void derefIfNotNull(T* ptr)
     {
         if (LIKELY(ptr != 0))
             ptr->deref();
     }
 
-    #undef REF_DEREF_INLINE
-
     template<typename T> class PassRefPtr {
     public:
         PassRefPtr() : m_ptr(0) { }