From: Benjamin Kramer Date: Mon, 18 Dec 2017 13:20:26 +0000 (+0000) Subject: Constexprify LaneBitmask factory methods. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=afb887543b8287b619be73cd6d1f8c75f199aa43;p=llvm Constexprify LaneBitmask factory methods. This avoids global constructors when they're used in a global constant. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320979 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/MC/LaneBitmask.h b/include/llvm/MC/LaneBitmask.h index a2bdcd4e69c..8c0b4ecb8fd 100644 --- a/include/llvm/MC/LaneBitmask.h +++ b/include/llvm/MC/LaneBitmask.h @@ -80,9 +80,9 @@ namespace llvm { return Log2_32(Mask); } - static LaneBitmask getNone() { return LaneBitmask(0); } - static LaneBitmask getAll() { return ~LaneBitmask(0); } - static LaneBitmask getLane(unsigned Lane) { + static constexpr LaneBitmask getNone() { return LaneBitmask(0); } + static constexpr LaneBitmask getAll() { return ~LaneBitmask(0); } + static constexpr LaneBitmask getLane(unsigned Lane) { return LaneBitmask(Type(1) << Lane); }