diff options
author | Chris Lattner <clattner@nondot.org> | 2022-04-26 12:03:03 -0700 |
---|---|---|
committer | Chris Lattner <clattner@nondot.org> | 2022-04-28 11:12:44 -0700 |
commit | 5dedf911deb409f6293c71ef6ef524359740f1f0 (patch) | |
tree | b285a875296d066d70f7693b808c8d9455c147a4 /llvm/lib/CodeGen/ModuloSchedule.cpp | |
parent | 6c81b57237164319b5429ee33957004aa21db2fa (diff) | |
download | llvm-5dedf911deb409f6293c71ef6ef524359740f1f0.zip llvm-5dedf911deb409f6293c71ef6ef524359740f1f0.tar.gz llvm-5dedf911deb409f6293c71ef6ef524359740f1f0.tar.bz2 |
[AsmParser] Rework logic around "region argument parsing"
The asm parser had a notional distinction between parsing an
operand (like "%foo" or "%4#3") and parsing a region argument
(which isn't supposed to allow a result number like #3).
Unfortunately the implementation has two problems:
1) It didn't actually check for the result number and reject
it. parseRegionArgument and parseOperand were identical.
2) It had a lot of machinery built up around it that paralleled
operand parsing. This also was functionally identical, but
also had some subtle differences (e.g. the parseOptional
stuff had a different result type).
I thought about just removing all of this, but decided that the
missing error checking was important, so I reimplemented it with
a `allowResultNumber` flag on parseOperand. This keeps the
codepaths unified and adds the missing error checks.
Differential Revision: https://reviews.llvm.org/D124470
Diffstat (limited to 'llvm/lib/CodeGen/ModuloSchedule.cpp')
0 files changed, 0 insertions, 0 deletions