Commit c5154eea authored by Tobias Tebbi's avatar Tobias Tebbi Committed by Commit Bot

[build][torque] remove workarounds for clang bug

Now that https://bugs.llvm.org/show_bug.cgi?id=40118 has been fixed and
rolled into V8, we can remove the workarounds for this Clang bug.

This also effectively reverts
https://chromium-review.googlesource.com/c/v8/v8/+/1280222

Bug: chromium:893437
Change-Id: Ia0d6d8ebdafafbc380b1b7a7809ef16effe50d71
Reviewed-on: https://chromium-review.googlesource.com/c/1425519Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
Commit-Queue: Tobias Tebbi <tebbi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#58987}
parent 0cd74947
...@@ -3050,9 +3050,6 @@ v8_source_set("torque_base") { ...@@ -3050,9 +3050,6 @@ v8_source_set("torque_base") {
] ]
configs = [ ":internal_config" ] configs = [ ":internal_config" ]
if (is_win && is_asan) {
remove_configs = [ "//build/config/sanitizers:default_sanitizer_flags" ]
}
} }
v8_component("v8_libbase") { v8_component("v8_libbase") {
...@@ -3416,9 +3413,6 @@ if (current_toolchain == v8_snapshot_toolchain) { ...@@ -3416,9 +3413,6 @@ if (current_toolchain == v8_snapshot_toolchain) {
] ]
configs = [ ":internal_config" ] configs = [ ":internal_config" ]
if (is_win && is_asan) {
remove_configs = [ "//build/config/sanitizers:default_sanitizer_flags" ]
}
} }
} }
......
...@@ -207,10 +207,7 @@ struct LoadObjectFieldInstruction : InstructionBase { ...@@ -207,10 +207,7 @@ struct LoadObjectFieldInstruction : InstructionBase {
TORQUE_INSTRUCTION_BOILERPLATE() TORQUE_INSTRUCTION_BOILERPLATE()
LoadObjectFieldInstruction(const ClassType* class_type, LoadObjectFieldInstruction(const ClassType* class_type,
std::string field_name) std::string field_name)
: class_type(class_type) { : class_type(class_type), field_name(std::move(field_name)) {}
// The normal way to write this triggers a bug in Clang on Windows.
this->field_name = std::move(field_name);
}
const ClassType* class_type; const ClassType* class_type;
std::string field_name; std::string field_name;
}; };
...@@ -219,10 +216,7 @@ struct StoreObjectFieldInstruction : InstructionBase { ...@@ -219,10 +216,7 @@ struct StoreObjectFieldInstruction : InstructionBase {
TORQUE_INSTRUCTION_BOILERPLATE() TORQUE_INSTRUCTION_BOILERPLATE()
StoreObjectFieldInstruction(const ClassType* class_type, StoreObjectFieldInstruction(const ClassType* class_type,
std::string field_name) std::string field_name)
: class_type(class_type) { : class_type(class_type), field_name(std::move(field_name)) {}
// The normal way to write this triggers a bug in Clang on Windows.
this->field_name = std::move(field_name);
}
const ClassType* class_type; const ClassType* class_type;
std::string field_name; std::string field_name;
}; };
...@@ -395,10 +389,8 @@ struct ReturnInstruction : InstructionBase { ...@@ -395,10 +389,8 @@ struct ReturnInstruction : InstructionBase {
struct PrintConstantStringInstruction : InstructionBase { struct PrintConstantStringInstruction : InstructionBase {
TORQUE_INSTRUCTION_BOILERPLATE() TORQUE_INSTRUCTION_BOILERPLATE()
explicit PrintConstantStringInstruction(std::string message) { explicit PrintConstantStringInstruction(std::string message)
// The normal way to write this triggers a bug in Clang on Windows. : message(std::move(message)) {}
this->message = std::move(message);
}
std::string message; std::string message;
}; };
...@@ -407,10 +399,8 @@ struct AbortInstruction : InstructionBase { ...@@ -407,10 +399,8 @@ struct AbortInstruction : InstructionBase {
TORQUE_INSTRUCTION_BOILERPLATE() TORQUE_INSTRUCTION_BOILERPLATE()
enum class Kind { kDebugBreak, kUnreachable, kAssertionFailure }; enum class Kind { kDebugBreak, kUnreachable, kAssertionFailure };
bool IsBlockTerminator() const override { return kind != Kind::kDebugBreak; } bool IsBlockTerminator() const override { return kind != Kind::kDebugBreak; }
explicit AbortInstruction(Kind kind, std::string message = "") : kind(kind) { explicit AbortInstruction(Kind kind, std::string message = "")
// The normal way to write this triggers a bug in Clang on Windows. : kind(kind), message(std::move(message)) {}
this->message = std::move(message);
}
Kind kind; Kind kind;
std::string message; std::string message;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment