Skip to content
This repository was archived by the owner on Mar 28, 2020. It is now read-only.

Commit d874e85

Browse files
[sanitizers] Use covering ObjectFormatType switches
Summary: This patch removes the `default` case from some switches on `llvm::Triple::ObjectFormatType`, and cases for the missing enumerators (`UnknownObjectFormat`, `Wasm`, and `XCOFF`) are then added. For `UnknownObjectFormat`, the effect of the action for the `default` case is maintained; otherwise, where `llvm_unreachable` is called, `report_fatal_error` is used instead. Where the `default` case returns a default value, `report_fatal_error` is used for XCOFF as a placeholder. For `Wasm`, the effect of the action for the `default` case in maintained. The code is structured to avoid strongly implying that the `Wasm` case is present for any reason other than to make the switch cover all `ObjectFormatType` enumerator values. Reviewers: sfertile, jasonliu, daltenty Reviewed By: sfertile Subscribers: hiraditya, aheejin, sunfish, llvm-commits, cfe-commits Tags: #clang, #llvm Differential Revision: https://reviews.llvm.org/D64222 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366544 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent eeb3d74 commit d874e85

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

lib/Transforms/Instrumentation/AddressSanitizer.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1919,7 +1919,12 @@ StringRef ModuleAddressSanitizer::getGlobalMetadataSection() const {
19191919
case Triple::COFF: return ".ASAN$GL";
19201920
case Triple::ELF: return "asan_globals";
19211921
case Triple::MachO: return "__DATA,__asan_globals,regular";
1922-
default: break;
1922+
case Triple::Wasm:
1923+
case Triple::XCOFF:
1924+
report_fatal_error(
1925+
"ModuleAddressSanitizer not implemented for object file format.");
1926+
case Triple::UnknownObjectFormat:
1927+
break;
19231928
}
19241929
llvm_unreachable("unsupported object format");
19251930
}

0 commit comments

Comments
 (0)