diff options
Diffstat (limited to 'utils/TableGen/NeonEmitter.cpp')
-rw-r--r-- | utils/TableGen/NeonEmitter.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/utils/TableGen/NeonEmitter.cpp b/utils/TableGen/NeonEmitter.cpp index c7b3ec55a6..7a623583f3 100644 --- a/utils/TableGen/NeonEmitter.cpp +++ b/utils/TableGen/NeonEmitter.cpp @@ -584,9 +584,23 @@ static std::string GenOpString(OpKind op, const std::string &proto, case OpAdd: s += "__a + __b;"; break; + case OpAddl: + s += Extend(proto, typestr, "__a") + " + " + + Extend(proto, typestr, "__b") + ";"; + break; + case OpAddw: + s += "__a + " + Extend(proto, typestr, "__b") + ";"; + break; case OpSub: s += "__a - __b;"; break; + case OpSubl: + s += Extend(proto, typestr, "__a") + " - " + + Extend(proto, typestr, "__b") + ";"; + break; + case OpSubw: + s += "__a - " + Extend(proto, typestr, "__b") + ";"; + break; case OpMulN: s += "__a * " + Duplicate(nElts, typestr, "__b") + ";"; break; |