1 // Checks that the debugging API returns correct shadow scale and offset. 2 // RUN: %clangxx_asan -O %s -o %t 3 // RUN: %env_asan_opts=verbosity=1 %run %t 2>&1 | FileCheck %s 4 5 #include <sanitizer/asan_interface.h> 6 #include <stdio.h> 7 #include <stdlib.h> 8 9 // printed because of verbosity=1 10 // CHECK: SHADOW_SCALE: [[SCALE:[0-9]+]] 11 // CHECK: SHADOW_OFFSET: [[OFFSET:0x[0-9a-f]+]] 12 main()13int main() { 14 size_t scale, offset; 15 __asan_get_shadow_mapping(&scale, &offset); 16 17 fprintf(stderr, "scale: %d\n", (int)scale); 18 fprintf(stderr, "offset: 0x%lx\n", offset); 19 20 // CHECK: scale: [[SCALE]] 21 // CHECK: offset: [[OFFSET]] 22 23 return 0; 24 } 25