1 // RUN: %clang_hwasan -O0 %s -o %t && %run %t 2>&1 | FileCheck %s 2 3 // REQUIRES: pointer-tagging 4 #include <assert.h> 5 #include <sanitizer/hwasan_interface.h> 6 #include <stdlib.h> 7 f(void * caller_frame)8__attribute__((noinline)) int f(void *caller_frame) { 9 int z = 0; 10 int *volatile p = &z; 11 // Tag of local is never zero. 12 assert(__hwasan_tag_pointer(p, 0) != p); 13 __hwasan_handle_longjmp(NULL); 14 return p[0]; 15 } 16 main()17int main() { 18 return f(__builtin_frame_address(0)); 19 // CHECK: HWASan is ignoring requested __hwasan_handle_longjmp: 20 } 21