glider added a comment.

> Should we have in AddressSanitizer.cpp the following for consistency with 
> other sanitizers?

Good catch, without that disable_sanitizer_instrumentation could not override 
sanitize_address.
I fixed this and added a test.



================
Comment at: clang/test/CodeGen/asan-globals.cpp:62
 // CHECK: ![[ATTR_GLOBAL]] = !{{{.*}}, null, null, i1 false, i1 true}
+// CHECK: ![[DISABLE_INSTR_GLOBAL]] = !{{{.*}}, null, null, i1 false, i1 true}
 // CHECK: ![[BLACKLISTED_GLOBAL]] = !{{{.*}}, null, null, i1 false, i1 true}
----------------
eugenis wrote:
> Does this test rely on the metadata being in the same order as the global 
> declarations in the source?  Feels brittle and hard to understand - could you 
> check if the regexps could be made more precise?
`llvm.asan.globals` above actually look as follows: `!llvm.asan.globals = !{!0, 
!2, !4, !6, !7, !8, !9, !11, !13, !15}`

, so the placeholder variables (e.g. `ATTR_GLOBAL` and `DISABLE_INSTR_GLOBAL`) 
actually match just the metadata node numbers.
I replaced the `{{.*}}` with variable/file names where applicable, but we'll 
still depend on the order of globals.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D114421/new/

https://reviews.llvm.org/D114421

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to