mgcarrasco wrote: > > > The trap version should work, I don't think what you had worked before > > > because the only sanitizer accepted by the ROCm Toolchain was `address`. > > > The version with a runtime will need a few modifications to work, but I'm > > > planning for a follow-up. > > > > > > I've checked out this PR's branch and the above example failed, although it > > doesn't look to me that it has UB. Is this an expected failure in terms of > > the functionalities that the PR is adding? > > Yes, you're right that the only sanitizer accepted is `address`. I had had > > to locally change the driver to test UBSan in trap mode. > > Interesting, I'll try once I've finished a build on another branch. First > thought is, you're checking `function` directly instead of broader > `undefined`? Is that the one that checks for indirect calls? Maybe it doesn't > like `printf`.
Thanks! Yes, my understanding is that the above command is instrumenting the indirect calls check. The check is also included in `-fsanitize=undefined -fsanitize-trap=all`. Removing the `printf`s also triggers the trap on my side. This is just a guess, if it is not printf, could it be something related to how `__global__` and `__device__` affect function calls? https://github.com/llvm/llvm-project/pull/188290 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
