| Index: src/platform-linux.cc | 
| diff --git a/src/platform-linux.cc b/src/platform-linux.cc | 
| index 69e767accd0e567574fa1810936c839d79a4572f..6e1faf831757cac9ed71c6f85aba925e5e72a9fe 100644 | 
| --- a/src/platform-linux.cc | 
| +++ b/src/platform-linux.cc | 
| @@ -611,9 +611,16 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) { | 
| sample.sp = mcontext.gregs[REG_RSP]; | 
| sample.fp = 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)) | 
| sample.pc = mcontext.gregs[R15]; | 
| sample.sp = mcontext.gregs[R13]; | 
| sample.fp = mcontext.gregs[R11]; | 
| +#else | 
| +    sample.pc = mcontext.arm_pc; | 
| +    sample.sp = mcontext.arm_sp; | 
| +    sample.fp = mcontext.arm_fp; | 
| +#endif | 
| #endif | 
| } | 
|  | 
|  |