diff options
author | River Riddle <riddleriver@gmail.com> | 2020-03-06 23:01:49 -0800 |
---|---|---|
committer | River Riddle <riddleriver@gmail.com> | 2020-03-06 23:01:49 -0800 |
commit | 320f0b003682a7bf5f0a89827763dcb1443c96e9 (patch) | |
tree | ac9162f3a195b5294d1afabcc1cb7a1f510175c4 | |
parent | c3108404c19a6472df4dd8dd5132d5b29f97cd05 (diff) | |
download | llvm-320f0b003682a7bf5f0a89827763dcb1443c96e9.zip llvm-320f0b003682a7bf5f0a89827763dcb1443c96e9.tar.gz llvm-320f0b003682a7bf5f0a89827763dcb1443c96e9.tar.bz2 |
[mlir] Change EffectKind in unsigned for bitfield to avoid miscompile in
MSVC
MSVC has problems if the type of the bitfield is different, leading to
invalid code generation.
-rw-r--r-- | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp index e5c6c56..69d5e97 100644 --- a/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp +++ b/mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp @@ -1176,12 +1176,12 @@ void OpEmitter::genSideEffectInterfaceMethods() { unsigned index : 30; /// The kind of the location. - EffectKind kind : 2; + unsigned kind : 2; }; StringMap<SmallVector<EffectLocation, 1>> interfaceEffects; auto resolveDecorators = [&](Operator::var_decorator_range decorators, - unsigned index, EffectKind kind) { + unsigned index, unsigned kind) { for (auto decorator : decorators) if (SideEffect *effect = dyn_cast<SideEffect>(&decorator)) interfaceEffects[effect->getInterfaceTrait()].push_back( |