@@ -6,8 +6,9 @@ rem -O Run python.exe or python_d.exe (see -d) with -O.
6
6
rem -q "quick" -- normally the tests are run twice, the first time
7
7
rem after deleting all the .pyc files reachable from Lib/.
8
8
rem -q runs the tests just once, and without deleting .pyc files.
9
- rem -x64 Run the 64-bit build of python (or python_d if -d was specified)
10
- rem When omitted, uses %PREFIX% if set or the 32-bit build
9
+ rem -p < Win32| x64| ARM| ARM64> or -win32, -x64, -arm32, -arm64
10
+ rem Run the specified architecture of python (or python_d if -d
11
+ rem was specified). If omitted, uses %PREFIX% if set or 64-bit.
11
12
rem All leading instances of these switches are shifted off, and
12
13
rem whatever remains (up to 9 arguments) is passed to regrtest.py.
13
14
rem For example,
@@ -38,12 +39,14 @@ set exe=
38
39
if " %1 " == " -O" (set dashO=-O) & shift & goto CheckOpts
39
40
if " %1 " == " -q" (set qmode=yes) & shift & goto CheckOpts
40
41
if " %1 " == " -d" (set suffix=_d) & shift & goto CheckOpts
42
+ if " %1 " == " -win32" (set prefix=%pcbuild% win32) & shift & goto CheckOpts
41
43
if " %1 " == " -x64" (set prefix=%pcbuild% amd64) & shift & goto CheckOpts
42
44
if " %1 " == " -arm64" (set prefix=%pcbuild% arm64) & shift & goto CheckOpts
43
45
if " %1 " == " -arm32" (set prefix=%pcbuild% arm32) & shift & goto CheckOpts
46
+ if " %1 " == " -p" (call :SetPlatform %~2 ) & shift & shift & goto CheckOpts
44
47
if NOT " %1 " == " " (set regrtestargs=%regrtestargs% %1 ) & shift & goto CheckOpts
45
48
46
- if not defined prefix set prefix = %pcbuild% win32
49
+ if not defined prefix set prefix = %pcbuild% amd64
47
50
set exe = %prefix% \python%suffix% .exe
48
51
set cmd = " %exe% " %dashO% -u -Wd -E -bb -m test %regrtestargs%
49
52
if defined qmode goto Qmode
@@ -60,6 +63,15 @@ echo on
60
63
61
64
echo About to run again without deleting .pyc first:
62
65
pause
66
+ goto Qmode
67
+
68
+ :SetPlatform
69
+ if /I %1 EQU Win32 (set prefix=%pcbuild% win32) & exit /B 0
70
+ if /I %1 EQU x64 (set prefix=%pcbuild% amd64) & exit /B 0
71
+ if /I %1 EQU ARM64 (set prefix=%pcbuild% arm64) & exit /B 0
72
+ if /I %1 EQU ARM (set prefix=%pcbuild% arm32) & exit /B 0
73
+ echo Invalid platform " %1 "
74
+ exit /B 1
63
75
64
76
:Qmode
65
77
echo on
0 commit comments