Stop maintaining costs in fgSimpleLowering. (dotnet/coreclr#6872)
authorPat Gavlin <pgavlin@gmail.com>
Tue, 23 Aug 2016 22:41:09 +0000 (15:41 -0700)
committerGitHub <noreply@github.com>
Tue, 23 Aug 2016 22:41:09 +0000 (15:41 -0700)
This was causing a few asserts on x86.

Commit migrated from https://github.com/dotnet/coreclr/commit/9b46970f46ca055932d8a2815965fff702c37557

src/coreclr/src/jit/flowgraph.cpp

index 66b3efb..a1d4aaf 100644 (file)
@@ -8981,12 +8981,16 @@ void Compiler::fgSimpleLowering()
                     {
                         con             = gtNewIconNode(arrLen->ArrLenOffset(), TYP_I_IMPL);
                         con->gtRsvdRegs = 0;
-                        con->gtCopyFPlvl(arr);
+
                         add             = gtNewOperNode(GT_ADD, TYP_REF, arr, con);
                         add->gtRsvdRegs = arr->gtRsvdRegs;
+
+#ifdef LEGACY_BACKEND
+                        con->gtCopyFPlvl(arr);
+
                         add->gtCopyFPlvl(arr);
                         add->CopyCosts(arr);
-#ifdef LEGACY_BACKEND
+
                         arr->gtNext = con;
                         con->gtPrev = arr;