GithubHelp home page GithubHelp logo

Comments (1)

wolfpld avatar wolfpld commented on May 9, 2024

More detailed call stack for operator new:

#0  0x00007ffffa858e30 in operator new(unsigned long)@plt () from /lib/x86_64-linux-gnu/libLLVM-10.so.1
#1  0x00007ffffa99903b in initializeMutex () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/Support/ManagedStatic.cpp:25
#2  0x00007fffff78f47f in __pthread_once_slow (once_control=0x7ffffe6beec8 <mutex_init_flag>, init_routine=0x7ffffebb5b50 <__once_proxy>) at pthread_once.c:116
#3  0x00007ffffa998e6a in __gthread_once () at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/x86_64-linux-gnu/c++/9/bits/gthr-default.h:700
#4  call_once<void (&)()> () at /usr/lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/mutex:683
#5  call_once<void (&)()> () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/include/llvm/Support/Threading.h:120
#6  getManagedStaticMutex () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/Support/ManagedStatic.cpp:29
#7  RegisterManagedStatic () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/Support/ManagedStatic.cpp:37
#8  0x00007ffffa946d9d in operator* () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/include/llvm/Support/ManagedStatic.h:89
#9  operator-> () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/include/llvm/Support/ManagedStatic.h:94
#10 registerCategory () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/lib/Support/CommandLine.cpp:482
#11 0x00007ffffa85a252 in _GLOBAL__sub_I_CommandLine.cpp () at /build/llvm-toolchain-10-yegZYJ/llvm-toolchain-10-10.0.0/llvm/include/llvm/Support/CommandLine.h:202
#12 0x00007fffff7c1b8a in ?? () from /lib64/ld-linux-x86-64.so.2
#13 0x00007fffff7c1c91 in ?? () from /lib64/ld-linux-x86-64.so.2
#14 0x00007fffff7b113a in ?? () from /lib64/ld-linux-x86-64.so.2
#15 0x0000000000000001 in ?? ()
#16 0x00007ffffffee8f7 in ?? ()
#17 0x0000000000000000 in ?? ()

llvm/lib/Support/ManagedStatic.cpp:25:

static void initializeMutex() {
  ManagedStaticMutex = new std::recursive_mutex();
}

Yeah, external stuff misusing your operator new/operator delete is always fun to handle. Makes you think whether this language feature was properly thought-out.

In such scenarios I think using TRACY_DELAYED_INIT will be the most appropriate.

from tracy.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.