[CMake] Add HAVE_MALLOC_TRIM definition
authordon.olmstead@sony.com <don.olmstead@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Aug 2018 20:08:03 +0000 (20:08 +0000)
committerdon.olmstead@sony.com <don.olmstead@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Aug 2018 20:08:03 +0000 (20:08 +0000)
https://bugs.webkit.org/show_bug.cgi?id=188897

Reviewed by Konstantin Tokarev.

.:

Add CMake check for malloc_trim.

* Source/cmake/OptionsCommon.cmake:

PerformanceTests:

MallocBench should only be built on Apple platforms and platforms that
have malloc_trim.

* CMakeLists.txt:

Source/WTF:

Use HAVE(MALLOC_TRIM) check instead of __GLIBC__.

* wtf/linux/MemoryPressureHandlerLinux.cpp:
(WTF::MemoryPressureHandler::platformReleaseMemory):

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

ChangeLog
PerformanceTests/CMakeLists.txt
PerformanceTests/ChangeLog
Source/WTF/ChangeLog
Source/WTF/wtf/linux/MemoryPressureHandlerLinux.cpp
Source/cmake/OptionsCommon.cmake

index ee4c937..daf1c1a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2018-08-23  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Add HAVE_MALLOC_TRIM definition
+        https://bugs.webkit.org/show_bug.cgi?id=188897
+
+        Reviewed by Konstantin Tokarev.
+
+        Add CMake check for malloc_trim.
+
+        * Source/cmake/OptionsCommon.cmake:
+
 2018-08-22  Ross Kirsling  <ross.kirsling@sony.com>
 
         [MSVC] Stop disabling /O2 features.
index cf60b94..0657f47 100644 (file)
@@ -1,4 +1,5 @@
-if (NOT USE_SYSTEM_MALLOC)
+# MallocBench requires malloc_trim for non-Apple platforms
+if (NOT USE_SYSTEM_MALLOC AND (APPLE OR HAVE_MALLOC_TRIM))
     add_subdirectory(MallocBench)
 endif ()
 
index 3cb7b6b..80391f8 100644 (file)
@@ -1,3 +1,15 @@
+2018-08-23  Don Olmstead  <don.olmstead@sony.com>
+
+        [CMake] Add HAVE_MALLOC_TRIM definition
+        https://bugs.webkit.org/show_bug.cgi?id=188897
+
+        Reviewed by Konstantin Tokarev.
+
+        MallocBench should only be built on Apple platforms and platforms that
+        have malloc_trim.
+
+        * CMakeLists.txt:
+
 2018-08-13  Jon Lee  <jonlee@apple.com>
 
         Update MotionMark version number
index 56ea640..124be2f 100644 (file)
@@ -1,5 +1,17 @@
 2018-08-23  Don Olmstead  <don.olmstead@sony.com>
 
+        [CMake] Add HAVE_MALLOC_TRIM definition
+        https://bugs.webkit.org/show_bug.cgi?id=188897
+
+        Reviewed by Konstantin Tokarev.
+
+        Use HAVE(MALLOC_TRIM) check instead of __GLIBC__.
+
+        * wtf/linux/MemoryPressureHandlerLinux.cpp:
+        (WTF::MemoryPressureHandler::platformReleaseMemory):
+
+2018-08-23  Don Olmstead  <don.olmstead@sony.com>
+
         [WTF] Add generic implementation for Memory querying
         https://bugs.webkit.org/show_bug.cgi?id=188867
         <rdar://problem/43630726>
index f9fbe23..0c4def1 100644 (file)
@@ -126,7 +126,7 @@ void MemoryPressureHandler::respondToMemoryPressure(Critical critical, Synchrono
 
 void MemoryPressureHandler::platformReleaseMemory(Critical)
 {
-#ifdef __GLIBC__
+#if HAVE(MALLOC_TRIM)
     malloc_trim(0);
 #endif
 }
index cd893d3..76303c3 100644 (file)
@@ -127,6 +127,7 @@ WEBKIT_CHECK_HAVE_INCLUDE(HAVE_SYS_TIMEB_H sys/timeb.h)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_ALIGNED_MALLOC _aligned_malloc)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_ISDEBUGGERPRESENT IsDebuggerPresent)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_LOCALTIME_R localtime_r)
+WEBKIT_CHECK_HAVE_FUNCTION(HAVE_MALLOC_TRIM malloc_trim)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_STRNSTR strnstr)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_TIMEGM timegm)
 WEBKIT_CHECK_HAVE_FUNCTION(HAVE_VASPRINTF vasprintf)