mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-25 12:06:08 +00:00

I'm making a change in this area (https://reviews.llvm.org/D138461), so update the test: * Add proper synchronization instead of a sleep. * Avoid some unnecessary size_t casts. * Spawn the number of hardware threads instead of 10. * Check that `__cxa_get_globals` and `__cxa_get_globals_fast` return the same values. * Split the test in with-threads and without-threads tests to simplify the code. Differential Revision: https://reviews.llvm.org/D138460 Co-authored-by: Louis Dionne <ldionne.2@gmail.com>
25 lines
962 B
C++
25 lines
962 B
C++
//===----------------------------------------------------------------------===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// UNSUPPORTED: c++03
|
|
|
|
#include "assert_macros.h"
|
|
#include "concat_macros.h"
|
|
#include "../src/cxa_exception.h"
|
|
|
|
int main(int, char**) {
|
|
void* globals = __cxxabiv1::__cxa_get_globals();
|
|
TEST_REQUIRE(globals != nullptr, TEST_WRITE_CONCATENATED("Got null result from __cxa_get_globals"));
|
|
|
|
void* fast_globals = __cxxabiv1::__cxa_get_globals_fast();
|
|
TEST_REQUIRE(globals == fast_globals, TEST_WRITE_CONCATENATED("__cxa_get_globals returned ", globals,
|
|
" but __cxa_get_globals_fast returned ", fast_globals));
|
|
|
|
return 0;
|
|
}
|