Co-authored-by: aleksandr.vodyanov <aleksandr.vodyanov@avroid.tech> Reviewed-on: https://git.avroid.tech/Conan/conan_build/pulls/15
47 lines
1.9 KiB
Diff
47 lines
1.9 KiB
Diff
From a5cea1bfc38ceafc74f4baddd6ab94ea13757ef8 Mon Sep 17 00:00:00 2001
|
|
From: Lei Zhang <thestig@chromium.org>
|
|
Date: Fri, 21 May 2021 10:55:53 -0700
|
|
Subject: [PATCH] Mark Node::opcode() and Operator::opcode() as constexpr.
|
|
|
|
Without the explicit constexpr keyword, Clang seems to be able to treat
|
|
these methods as constexpr, whereas MSVC will not.
|
|
|
|
Bug: v8:11760
|
|
Change-Id: I9f6492f38fb50dcaf7a4f09da0bd79c0da6a50eb
|
|
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2912916
|
|
Reviewed-by: Clemens Backes <clemensb@chromium.org>
|
|
Reviewed-by: Maya Lekova <mslekova@chromium.org>
|
|
Commit-Queue: Lei Zhang <thestig@chromium.org>
|
|
Cr-Commit-Position: refs/heads/master@{#74791}
|
|
---
|
|
src/compiler/node.h | 2 +-
|
|
src/compiler/operator.h | 2 +-
|
|
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/compiler/node.h b/src/compiler/node.h
|
|
index 37b45c403f1..57d49fe1ac0 100644
|
|
--- a/src/compiler/node.h
|
|
+++ b/src/compiler/node.h
|
|
@@ -50,7 +50,7 @@ class V8_EXPORT_PRIVATE Node final {
|
|
|
|
const Operator* op() const { return op_; }
|
|
|
|
- IrOpcode::Value opcode() const {
|
|
+ constexpr IrOpcode::Value opcode() const {
|
|
DCHECK_GE(IrOpcode::kLast, op_->opcode());
|
|
return static_cast<IrOpcode::Value>(op_->opcode());
|
|
}
|
|
diff --git a/src/compiler/operator.h b/src/compiler/operator.h
|
|
index 4206e753f1e..f641394eb1f 100644
|
|
--- a/src/compiler/operator.h
|
|
+++ b/src/compiler/operator.h
|
|
@@ -69,7 +69,7 @@ class V8_EXPORT_PRIVATE Operator : public NON_EXPORTED_BASE(ZoneObject) {
|
|
// A small integer unique to all instances of a particular kind of operator,
|
|
// useful for quick matching for specific kinds of operators. For fast access
|
|
// the opcode is stored directly in the operator object.
|
|
- Opcode opcode() const { return opcode_; }
|
|
+ constexpr Opcode opcode() const { return opcode_; }
|
|
|
|
// Returns a constant string representing the mnemonic of the operator,
|
|
// without the static parameters. Useful for debugging.
|