From: Christopher Dykes Date: Mon, 5 Jun 2017 23:09:11 +0000 (-0700) Subject: Rename folly/detail/Malloc.h to folly/detail/MallocImpl.h X-Git-Tag: v2017.06.12.00~40 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=43fde9f2bc353ef04b53721f8a3242ffda9f1f71;p=folly.git Rename folly/detail/Malloc.h to folly/detail/MallocImpl.h Summary: This makes the name of the header match the source file. Reviewed By: yfeldblum Differential Revision: D5186193 fbshipit-source-id: b1f9041fb730eacb91ad167e500c25df8f8ba947 --- diff --git a/folly/Makefile.am b/folly/Makefile.am index 1b926cba..8a15e9a4 100644 --- a/folly/Makefile.am +++ b/folly/Makefile.am @@ -74,7 +74,7 @@ nobase_follyinclude_HEADERS = \ detail/GroupVarintDetail.h \ detail/IPAddress.h \ detail/IPAddressSource.h \ - detail/Malloc.h \ + detail/MallocImpl.h \ detail/MemoryIdler.h \ detail/MPMCPipelineDetail.h \ detail/RangeCommon.h \ diff --git a/folly/Malloc.h b/folly/Malloc.h index a5884b0b..ca9e7ae1 100644 --- a/folly/Malloc.h +++ b/folly/Malloc.h @@ -45,7 +45,7 @@ // includes and uses fbstring. #if defined(_GLIBCXX_USE_FB) && !defined(_LIBSTDCXX_FBSTRING) -#include +#include #include #include @@ -98,7 +98,7 @@ __attribute__((__weak__)); #else // !defined(_LIBSTDCXX_FBSTRING) -#include /* nolint */ +#include /* nolint */ #include /* nolint */ #endif diff --git a/folly/detail/Malloc.h b/folly/detail/Malloc.h deleted file mode 100644 index 74358f1c..00000000 --- a/folly/detail/Malloc.h +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright 2017 Facebook, Inc. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#pragma once - -#include - -#include - -extern "C" { - -#if FOLLY_HAVE_WEAK_SYMBOLS -void* mallocx(size_t, int) __attribute__((__weak__)); -void* rallocx(void*, size_t, int) __attribute__((__weak__)); -size_t xallocx(void*, size_t, size_t, int) __attribute__((__weak__)); -size_t sallocx(const void*, int) __attribute__((__weak__)); -void dallocx(void*, int) __attribute__((__weak__)); -void sdallocx(void*, size_t, int) __attribute__((__weak__)); -size_t nallocx(size_t, int) __attribute__((__weak__)); -int mallctl(const char*, void*, size_t*, void*, size_t) - __attribute__((__weak__)); -int mallctlnametomib(const char*, size_t*, size_t*) __attribute__((__weak__)); -int mallctlbymib(const size_t*, size_t, void*, size_t*, void*, size_t) - __attribute__((__weak__)); -#else -extern void* (*mallocx)(size_t, int); -extern void* (*rallocx)(void*, size_t, int); -extern size_t (*xallocx)(void*, size_t, size_t, int); -extern size_t (*sallocx)(const void*, int); -extern void (*dallocx)(void*, int); -extern void (*sdallocx)(void*, size_t, int); -extern size_t (*nallocx)(size_t, int); -extern int (*mallctl)(const char*, void*, size_t*, void*, size_t); -extern int (*mallctlnametomib)(const char*, size_t*, size_t*); -extern int (*mallctlbymib)(const size_t*, size_t, void*, size_t*, void*, - size_t); -#ifdef _MSC_VER -// We emulate weak linkage for MSVC. The symbols we're -// aliasing to are hiding in MallocImpl.cpp -#pragma comment(linker, "/alternatename:mallocx=mallocxWeak") -#pragma comment(linker, "/alternatename:rallocx=rallocxWeak") -#pragma comment(linker, "/alternatename:xallocx=xallocxWeak") -#pragma comment(linker, "/alternatename:sallocx=sallocxWeak") -#pragma comment(linker, "/alternatename:dallocx=dallocxWeak") -#pragma comment(linker, "/alternatename:sdallocx=sdallocxWeak") -#pragma comment(linker, "/alternatename:nallocx=nallocxWeak") -#pragma comment(linker, "/alternatename:mallctl=mallctlWeak") -#pragma comment(linker, "/alternatename:mallctlnametomib=mallctlnametomibWeak") -#pragma comment(linker, "/alternatename:mallctlbymib=mallctlbymibWeak") -#endif -#endif - -} diff --git a/folly/detail/MallocImpl.cpp b/folly/detail/MallocImpl.cpp index a545f362..3daa120a 100644 --- a/folly/detail/MallocImpl.cpp +++ b/folly/detail/MallocImpl.cpp @@ -14,7 +14,7 @@ * limitations under the License. */ -#include +#include extern "C" { diff --git a/folly/detail/MallocImpl.h b/folly/detail/MallocImpl.h new file mode 100644 index 00000000..74358f1c --- /dev/null +++ b/folly/detail/MallocImpl.h @@ -0,0 +1,66 @@ +/* + * Copyright 2017 Facebook, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#pragma once + +#include + +#include + +extern "C" { + +#if FOLLY_HAVE_WEAK_SYMBOLS +void* mallocx(size_t, int) __attribute__((__weak__)); +void* rallocx(void*, size_t, int) __attribute__((__weak__)); +size_t xallocx(void*, size_t, size_t, int) __attribute__((__weak__)); +size_t sallocx(const void*, int) __attribute__((__weak__)); +void dallocx(void*, int) __attribute__((__weak__)); +void sdallocx(void*, size_t, int) __attribute__((__weak__)); +size_t nallocx(size_t, int) __attribute__((__weak__)); +int mallctl(const char*, void*, size_t*, void*, size_t) + __attribute__((__weak__)); +int mallctlnametomib(const char*, size_t*, size_t*) __attribute__((__weak__)); +int mallctlbymib(const size_t*, size_t, void*, size_t*, void*, size_t) + __attribute__((__weak__)); +#else +extern void* (*mallocx)(size_t, int); +extern void* (*rallocx)(void*, size_t, int); +extern size_t (*xallocx)(void*, size_t, size_t, int); +extern size_t (*sallocx)(const void*, int); +extern void (*dallocx)(void*, int); +extern void (*sdallocx)(void*, size_t, int); +extern size_t (*nallocx)(size_t, int); +extern int (*mallctl)(const char*, void*, size_t*, void*, size_t); +extern int (*mallctlnametomib)(const char*, size_t*, size_t*); +extern int (*mallctlbymib)(const size_t*, size_t, void*, size_t*, void*, + size_t); +#ifdef _MSC_VER +// We emulate weak linkage for MSVC. The symbols we're +// aliasing to are hiding in MallocImpl.cpp +#pragma comment(linker, "/alternatename:mallocx=mallocxWeak") +#pragma comment(linker, "/alternatename:rallocx=rallocxWeak") +#pragma comment(linker, "/alternatename:xallocx=xallocxWeak") +#pragma comment(linker, "/alternatename:sallocx=sallocxWeak") +#pragma comment(linker, "/alternatename:dallocx=dallocxWeak") +#pragma comment(linker, "/alternatename:sdallocx=sdallocxWeak") +#pragma comment(linker, "/alternatename:nallocx=nallocxWeak") +#pragma comment(linker, "/alternatename:mallctl=mallctlWeak") +#pragma comment(linker, "/alternatename:mallctlnametomib=mallctlnametomibWeak") +#pragma comment(linker, "/alternatename:mallctlbymib=mallctlbymibWeak") +#endif +#endif + +}