[all-commits] [llvm/llvm-project] 6678f8: [ubsan] Using metadata instead of prologue data fo...
Yuanfang Chen via All-commits
all-commits at lists.llvm.org
Mon Jun 27 12:12:01 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 6678f8e505b19069a9dbdc3e3ee088d543752412
https://github.com/llvm/llvm-project/commit/6678f8e505b19069a9dbdc3e3ee088d543752412
Author: Yuanfang Chen <yuanfang.chen at sony.com>
Date: 2022-06-27 (Mon, 27 Jun 2022)
Changed paths:
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/Driver/SanitizerArgs.cpp
M clang/test/CodeGen/ubsan-function.cpp
M clang/test/CodeGenCXX/catch-undef-behavior.cpp
M clang/test/CodeGenCXX/ubsan-function-noexcept.cpp
M clang/test/Driver/fsanitize.c
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/MDBuilder.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/IR/MDBuilder.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
A llvm/test/CodeGen/X86/func-sanitizer.ll
Log Message:
-----------
[ubsan] Using metadata instead of prologue data for function sanitizer
Information in the function `Prologue Data` is intentionally opaque.
When a function with `Prologue Data` is duplicated. The self (global
value) references inside `Prologue Data` is still pointing to the
original function. This may cause errors like `fatal error: error in backend: Cannot represent a difference across sections`.
This patch detaches the information from function `Prologue Data`
and attaches it to a function metadata node.
This and D116130 fix https://github.com/llvm/llvm-project/issues/49689.
Reviewed By: pcc
Differential Revision: https://reviews.llvm.org/D115844
Commit: e2e9e708e5c2c3d5357b4bb355285ef55cd060d9
https://github.com/llvm/llvm-project/commit/e2e9e708e5c2c3d5357b4bb355285ef55cd060d9
Author: Yuanfang Chen <yuanfang.chen at sony.com>
Date: 2022-06-27 (Mon, 27 Jun 2022)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/test/Transforms/Coroutines/coro-split-00.ll
Log Message:
-----------
[Coroutine] Remove the '!func_sanitize' metadata for split functions
There is no proper RTTI for these split functions. So just delete the
metadata.
Fixes https://github.com/llvm/llvm-project/issues/49689.
Reviewed By: rjmccall
Differential Revision: https://reviews.llvm.org/D116130
Compare: https://github.com/llvm/llvm-project/compare/ae90bc846758...e2e9e708e5c2
More information about the All-commits
mailing list