1234567891011121314151617181920212223242526272829 |
- Fix compilation for ARM/uClibc
- Patch from Remi Duraffort <remi.duraffort@st.com>, taken from
- https://code.google.com/p/v8/source/detail?r=12094
- Signed-off-by: Daniel Price <daniel.price@gmail.com>
- --- a/deps/v8/src/platform-linux.cc
- +++ b/deps/v8/src/platform-linux.cc
- @@ -1025,7 +1025,8 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
- sample->fp = reinterpret_cast<Address>(mcontext.gregs[REG_RBP]);
- #elif V8_HOST_ARCH_ARM
- // An undefined macro evaluates to 0, so this applies to Android's Bionic also.
- -#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
- +#if (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) && \
- + !defined(__UCLIBC__))
- sample->pc = reinterpret_cast<Address>(mcontext.gregs[R15]);
- sample->sp = reinterpret_cast<Address>(mcontext.gregs[R13]);
- sample->fp = reinterpret_cast<Address>(mcontext.gregs[R11]);
- @@ -1033,7 +1034,8 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
- sample->pc = reinterpret_cast<Address>(mcontext.arm_pc);
- sample->sp = reinterpret_cast<Address>(mcontext.arm_sp);
- sample->fp = reinterpret_cast<Address>(mcontext.arm_fp);
- -#endif // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3))
- +#endif // (__GLIBC__ < 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ <= 3) &&
- + // !defined(__UCLIBC__))
- #elif V8_HOST_ARCH_MIPS
- sample->pc = reinterpret_cast<Address>(mcontext.pc);
- sample->sp = reinterpret_cast<Address>(mcontext.gregs[29]);
|