summaryrefslogtreecommitdiffstats
path: root/Tools/cases_generator
diff options
context:
space:
mode:
authorKirill Podoprigora <kirill.bast9@mail.ru>2024-03-07 19:05:50 (GMT)
committerGitHub <noreply@github.com>2024-03-07 19:05:50 (GMT)
commitb2d74cdbcd0b47bc938200969bb31e5b37dc11e1 (patch)
tree6904511bc896252a900c5d1de6e5c6b1835e14ce /Tools/cases_generator
parent834bf57eb79e9bf383a7173fccda032f4c53f69b (diff)
downloadcpython-b2d74cdbcd0b47bc938200969bb31e5b37dc11e1.zip
cpython-b2d74cdbcd0b47bc938200969bb31e5b37dc11e1.tar.gz
cpython-b2d74cdbcd0b47bc938200969bb31e5b37dc11e1.tar.bz2
gh-116000: Make optimizer_generator.py work without any arguments (#116470)
Diffstat (limited to 'Tools/cases_generator')
-rw-r--r--Tools/cases_generator/optimizer_generator.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/Tools/cases_generator/optimizer_generator.py b/Tools/cases_generator/optimizer_generator.py
index fca42b5..a0a2f10 100644
--- a/Tools/cases_generator/optimizer_generator.py
+++ b/Tools/cases_generator/optimizer_generator.py
@@ -27,7 +27,7 @@ from lexer import Token
from stack import Stack, SizeMismatch, UNUSED
DEFAULT_OUTPUT = ROOT / "Python/optimizer_cases.c.h"
-DEFAULT_ABSTRACT_INPUT = ROOT / "Python/optimizer_bytecodes.c"
+DEFAULT_ABSTRACT_INPUT = (ROOT / "Python/optimizer_bytecodes.c").absolute().as_posix()
def validate_uop(override: Uop, uop: Uop) -> None:
@@ -214,19 +214,22 @@ arg_parser.add_argument(
)
-arg_parser.add_argument("input", nargs=1, help="Abstract interpreter definition file")
+arg_parser.add_argument("input", nargs='*', help="Abstract interpreter definition file")
arg_parser.add_argument(
- "base", nargs=argparse.REMAINDER, help="The base instruction definition file(s)"
+ "base", nargs="*", help="The base instruction definition file(s)"
)
arg_parser.add_argument("-d", "--debug", help="Insert debug calls", action="store_true")
if __name__ == "__main__":
args = arg_parser.parse_args()
- if len(args.base) == 0:
- args.input.append(DEFAULT_INPUT)
+ if not args.input:
+ args.base.append(DEFAULT_INPUT)
args.input.append(DEFAULT_ABSTRACT_INPUT)
+ else:
+ args.base.append(args.input[-1])
+ args.input.pop()
abstract = analyze_files(args.input)
base = analyze_files(args.base)
with open(args.output, "w") as outfile: