From e2d17845973714cda3e828c16131f245dd82b2b6 Mon Sep 17 00:00:00 2001 From: Abseil Team Date: Fri, 16 Feb 2018 01:13:15 -0800 Subject: Changes imported from Abseil "staging" branch: - db6fa2aed56380c6708670659c6f8603284fcc4a Rework Abseil cmake/README.md by Abseil Team - 192c7d3553bc0fe98f6935ccecff48ed785d89f0 Add function attribute ABSL_ATTRIBUTE_FUNC_ALIGN(bytes) t... by Abseil Team - 1a93e95c71c656add346a0c1771bec26417347ad Internal change by Abseil Team - 5c6d3e023a8749a5cc89f4cc6b57b6684a28b1c1 Internal change by Shaindel Schwartz - e415990ea54cf882646b0bc0a75a6e3c6741ce5f Fix testing of UTF8 characters on Windows (https://github... by Abseil Team GitOrigin-RevId: db6fa2aed56380c6708670659c6f8603284fcc4a Change-Id: I128a7ca751fa207ef272809c1b908568d187c87e --- absl/base/attributes.h | 10 ++++++++++ absl/base/internal/malloc_hook.cc | 1 + absl/strings/str_split_test.cc | 6 +++--- absl/synchronization/blocking_counter.h | 1 + 4 files changed, 15 insertions(+), 3 deletions(-) (limited to 'absl') diff --git a/absl/base/attributes.h b/absl/base/attributes.h index 4e1fc8b..c44b2e8 100644 --- a/absl/base/attributes.h +++ b/absl/base/attributes.h @@ -527,6 +527,16 @@ #define ABSL_ATTRIBUTE_PACKED #endif +// ABSL_ATTRIBUTE_FUNC_ALIGN +// +// Tells the compiler to align the function start at least to certain +// alignment boundary +#if ABSL_HAVE_ATTRIBUTE(aligned) || (defined(__GNUC__) && !defined(__clang__)) +#define ABSL_ATTRIBUTE_FUNC_ALIGN(bytes) __attribute__((aligned(bytes))) +#else +#define ABSL_ATTRIBUTE_FUNC_ALIGN(bytes) +#endif + // ABSL_CONST_INIT // // A variable declaration annotated with the `ABSL_CONST_INIT` attribute will diff --git a/absl/base/internal/malloc_hook.cc b/absl/base/internal/malloc_hook.cc index 780e8fe..e7b626d 100644 --- a/absl/base/internal/malloc_hook.cc +++ b/absl/base/internal/malloc_hook.cc @@ -437,6 +437,7 @@ static inline bool InHookCaller(const void* caller) { return ADDR_IN_ATTRIBUTE_SECTION(caller, google_malloc) || ADDR_IN_ATTRIBUTE_SECTION(caller, malloc_hook) || ADDR_IN_ATTRIBUTE_SECTION(caller, blink_malloc); + // We can use one section for everything except tcmalloc_or_debug // due to its special linkage mode, which prevents merging of the sections. } diff --git a/absl/strings/str_split_test.cc b/absl/strings/str_split_test.cc index b1db1c5..16b047a 100644 --- a/absl/strings/str_split_test.cc +++ b/absl/strings/str_split_test.cc @@ -621,7 +621,7 @@ TEST(Split, StringDelimiter) { TEST(Split, UTF8) { // Tests splitting utf8 strings and utf8 delimiters. - std::string utf8_string = "\u03BA\u1F79\u03C3\u03BC\u03B5"; + std::string utf8_string = u8"\u03BA\u1F79\u03C3\u03BC\u03B5"; { // A utf8 input std::string with an ascii delimiter. std::string to_split = "a," + utf8_string; @@ -641,8 +641,8 @@ TEST(Split, UTF8) { { // A utf8 input std::string and ByAnyChar with ascii chars. std::vector v = - absl::StrSplit("Foo h\u00E4llo th\u4E1Ere", absl::ByAnyChar(" \t")); - EXPECT_THAT(v, ElementsAre("Foo", "h\u00E4llo", "th\u4E1Ere")); + absl::StrSplit(u8"Foo h\u00E4llo th\u4E1Ere", absl::ByAnyChar(" \t")); + EXPECT_THAT(v, ElementsAre("Foo", u8"h\u00E4llo", u8"th\u4E1Ere")); } } diff --git a/absl/synchronization/blocking_counter.h b/absl/synchronization/blocking_counter.h index 476d5f8..557ed02 100644 --- a/absl/synchronization/blocking_counter.h +++ b/absl/synchronization/blocking_counter.h @@ -93,4 +93,5 @@ class BlockingCounter { }; } // namespace absl + #endif // ABSL_SYNCHRONIZATION_BLOCKING_COUNTER_H_ -- cgit v1.2.3