Support AMD64 in msilib. Set Win64 on reglocator.
Fixes #6258.
diff --git a/Lib/distutils/command/bdist_msi.py b/Lib/distutils/command/bdist_msi.py
index 52e193e..d69c4b6 100644
--- a/Lib/distutils/command/bdist_msi.py
+++ b/Lib/distutils/command/bdist_msi.py
@@ -342,9 +342,14 @@
             exe_action = "PythonExe" + ver
             target_dir_prop = "TARGETDIR" + ver
             exe_prop = "PYTHON" + ver
+            if msilib.Win64:
+                # type: msidbLocatorTypeRawValue + msidbLocatorType64bit
+                Type = 2+16
+            else:
+                Type = 2
             add_data(self.db, "RegLocator",
-                    [(machine_reg, 2, install_path, None, 2),
-                     (user_reg, 1, install_path, None, 2)])
+                    [(machine_reg, 2, install_path, None, Type),
+                     (user_reg, 1, install_path, None, Type)])
             add_data(self.db, "AppSearch",
                     [(machine_prop, machine_reg),
                      (user_prop, user_reg)])
diff --git a/Lib/msilib/__init__.py b/Lib/msilib/__init__.py
index b13d030..71cced2 100644
--- a/Lib/msilib/__init__.py
+++ b/Lib/msilib/__init__.py
@@ -2,9 +2,11 @@
 # Copyright (C) 2005 Martin v. Löwis
 # Licensed to PSF under a Contributor Agreement.
 from _msi import *
-import os, string, re
+import os, string, re, sys
 
-Win64=0
+AMD64 = "AMD64" in sys.version
+Itanium = "Itanium" in sys.version
+Win64 = AMD64 or Itanium
 
 # Partially taken from Wine
 datasizemask=      0x00ff
@@ -145,8 +147,10 @@
     si.SetProperty(PID_TITLE, "Installation Database")
     si.SetProperty(PID_SUBJECT, ProductName)
     si.SetProperty(PID_AUTHOR, Manufacturer)
-    if Win64:
+    if Itanium:
         si.SetProperty(PID_TEMPLATE, "Intel64;1033")
+    elif AMD64:
+        si.SetProperty(PID_TEMPLATE, "x64;1033")
     else:
         si.SetProperty(PID_TEMPLATE, "Intel;1033")
     si.SetProperty(PID_REVNUMBER, gen_uuid())
diff --git a/Misc/NEWS b/Misc/NEWS
index ffb15b4..fda9fba 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -317,6 +317,8 @@
 Library
 -------
 
+- Issue #6258: Support AMD64 in bdist_msi.
+
 - Issue #5262: Fixed bug in next rollover time computation in
   TimedRotatingFileHandler.