[lld] edcc60e - [ELF] Simplify readAssignment
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Sat Jul 27 16:04:42 PDT 2024
Author: Fangrui Song
Date: 2024-07-27T16:04:38-07:00
New Revision: edcc60e403703904fcb1425f31a9c20ab0d90f43
URL: https://github.com/llvm/llvm-project/commit/edcc60e403703904fcb1425f31a9c20ab0d90f43
DIFF: https://github.com/llvm/llvm-project/commit/edcc60e403703904fcb1425f31a9c20ab0d90f43.diff
LOG: [ELF] Simplify readAssignment
After #100493, the `=` support from
fe0de25b2195b66d1ebac5d3ebdb18f9e1e776da can be simplified.
Added:
Modified:
lld/ELF/ScriptParser.cpp
Removed:
################################################################################
diff --git a/lld/ELF/ScriptParser.cpp b/lld/ELF/ScriptParser.cpp
index b80db28764fd3..d9193c404ec67 100644
--- a/lld/ELF/ScriptParser.cpp
+++ b/lld/ELF/ScriptParser.cpp
@@ -1126,22 +1126,21 @@ SymbolAssignment *ScriptParser::readAssignment(StringRef tok) {
SymbolAssignment *cmd = nullptr;
bool savedSeenRelroEnd = script->seenRelroEnd;
const StringRef op = peek();
- if (op.starts_with("=")) {
- // Support = followed by an expression without whitespace.
+ {
SaveAndRestore saved(inExpr, true);
- cmd = readSymbolAssignment(tok);
- } else if ((op.size() == 2 && op[1] == '=' && strchr("*/+-&^|", op[0])) ||
- op == "<<=" || op == ">>=") {
- cmd = readSymbolAssignment(tok);
- } else if (tok == "PROVIDE") {
- SaveAndRestore saved(inExpr, true);
- cmd = readProvideHidden(true, false);
- } else if (tok == "HIDDEN") {
- SaveAndRestore saved(inExpr, true);
- cmd = readProvideHidden(false, true);
- } else if (tok == "PROVIDE_HIDDEN") {
- SaveAndRestore saved(inExpr, true);
- cmd = readProvideHidden(true, true);
+ if (op.starts_with("=")) {
+ // Support = followed by an expression without whitespace.
+ cmd = readSymbolAssignment(tok);
+ } else if ((op.size() == 2 && op[1] == '=' && strchr("+-*/&^|", op[0])) ||
+ op == "<<=" || op == ">>=") {
+ cmd = readSymbolAssignment(tok);
+ } else if (tok == "PROVIDE") {
+ cmd = readProvideHidden(true, false);
+ } else if (tok == "HIDDEN") {
+ cmd = readProvideHidden(false, true);
+ } else if (tok == "PROVIDE_HIDDEN") {
+ cmd = readProvideHidden(true, true);
+ }
}
if (cmd) {
More information about the llvm-commits
mailing list