diff --git a/build/targets/NGenOrCrossGen.targets b/build/targets/NGenOrCrossGen.targets
index 33dcaa3a63a..3dba4fc5b2d 100644
--- a/build/targets/NGenOrCrossGen.targets
+++ b/build/targets/NGenOrCrossGen.targets
@@ -16,9 +16,9 @@
NGen for both 32 and 64 bit product.
If compiling use the app config file, if present.
-->
-
+
-
+
diff --git a/src/absil/ilwrite.fs b/src/absil/ilwrite.fs
index ccc40c69d74..cac9ccbcefe 100644
--- a/src/absil/ilwrite.fs
+++ b/src/absil/ilwrite.fs
@@ -2857,9 +2857,8 @@ and newGuid (modul: ILModuleDef) =
and deterministicGuid (modul: ILModuleDef) =
let n = 16909060
- let m = hash n
- let m2 = hash modul.Name
- [| b0 m; b1 m; b2 m; b3 m; b0 m2; b1 m2; b2 m2; b3 m2; 0xa7uy; 0x45uy; 0x03uy; 0x83uy; b0 n; b1 n; b2 n; b3 n |]
+ let m2 = Seq.sum (Seq.mapi (fun i x -> i + int x) modul.Name) // use a stable hash
+ [| b0 n; b1 n; b2 n; b3 n; b0 m2; b1 m2; b2 m2; b3 m2; 0xa7uy; 0x45uy; 0x03uy; 0x83uy; b0 n; b1 n; b2 n; b3 n |]
and GetModuleAsRow (cenv:cenv) (modul: ILModuleDef) =
// Store the generated MVID in the environment (needed for generating debug information)
diff --git a/src/fsharp/fsc/fsc.fsproj b/src/fsharp/fsc/fsc.fsproj
index 40f56a0627e..a2e5127b61a 100644
--- a/src/fsharp/fsc/fsc.fsproj
+++ b/src/fsharp/fsc/fsc.fsproj
@@ -15,6 +15,10 @@
true
+
+ x86
+
+
fscmain.fs
diff --git a/src/fsharp/fsi/fsi.fsproj b/src/fsharp/fsi/fsi.fsproj
index 5dbcac7557e..b8b6a9a020f 100644
--- a/src/fsharp/fsi/fsi.fsproj
+++ b/src/fsharp/fsi/fsi.fsproj
@@ -17,6 +17,7 @@
+ x86
$(DefineConstants);FSI_SHADOW_COPY_REFERENCES;FSI_SERVER
diff --git a/tests/fsharpqa/Source/CompilerOptions/fsc/determinism/binaryCompare.fsx b/tests/fsharpqa/Source/CompilerOptions/fsc/determinism/binaryCompare.fsx
index 2147b88cb83..c70512bb866 100644
--- a/tests/fsharpqa/Source/CompilerOptions/fsc/determinism/binaryCompare.fsx
+++ b/tests/fsharpqa/Source/CompilerOptions/fsc/determinism/binaryCompare.fsx
@@ -13,8 +13,10 @@ let filePairsToCheck =
|> Seq.map (fun f -> f, f.Replace("dummy","dummy2"))
let compareFiles pair =
- let correct = areSame pair = shouldBeSame
- if not correct then
+ let correct = (areSame pair = shouldBeSame)
+ if correct then
+ printfn "Good, %s and %s were %s" (fst pair) (snd pair) (if shouldBeSame then "same" else "different")
+ else
printfn "Expected %s and %s to be %s" (fst pair) (snd pair) (if shouldBeSame then "same" else "different")
correct
diff --git a/tests/fsharpqa/Source/run.pl b/tests/fsharpqa/Source/run.pl
index d9c3de8c3de..e9363e6aea6 100644
--- a/tests/fsharpqa/Source/run.pl
+++ b/tests/fsharpqa/Source/run.pl
@@ -424,7 +424,9 @@ sub RunCompilerCommand {
@CommandOutput = <$remote>;
print "--------------------------------------------------------\n";
- print "Error from hosted compiler\n";
+ print "Results from hosted compiler\n";
+ print "msg: $msg\n";
+ print "cmd: $cmd\n";
print "Exit code: $ExitCode\n";
print "Error: $Type\n";
print @CommandOutput;
diff --git a/tests/fsharpqa/testenv/src/HostedCompilerServer/HostedCompilerServer.fsproj b/tests/fsharpqa/testenv/src/HostedCompilerServer/HostedCompilerServer.fsproj
index 994b9060c14..915c0c9e106 100644
--- a/tests/fsharpqa/testenv/src/HostedCompilerServer/HostedCompilerServer.fsproj
+++ b/tests/fsharpqa/testenv/src/HostedCompilerServer/HostedCompilerServer.fsproj
@@ -8,6 +8,8 @@
true
false
$(RepoRoot)tests\fsharpqa\testenv\bin
+ AnyCPU
+ true
diff --git a/vsintegration/src/FSharp.VS.FSI/sessions.fs b/vsintegration/src/FSharp.VS.FSI/sessions.fs
index fb662d38d98..5e07e4672ea 100644
--- a/vsintegration/src/FSharp.VS.FSI/sessions.fs
+++ b/vsintegration/src/FSharp.VS.FSI/sessions.fs
@@ -66,7 +66,7 @@ let timeoutApp descr timeoutMS (f : 'a -> 'b) (arg:'a) =
!r
module SessionsProperties =
- let mutable useAnyCpuVersion = false
+ let mutable useAnyCpuVersion = true // 64-bit by default
let mutable fsiArgs = "--optimize"
let mutable fsiShadowCopy = true
let mutable fsiDebugMode = false