OSDN Git Service

Revert "Add a check in the location summary."
authorNicolas Geoffray <ngeoffray@google.com>
Wed, 15 Apr 2015 10:07:52 +0000 (10:07 +0000)
committerNicolas Geoffray <ngeoffray@google.com>
Wed, 15 Apr 2015 10:07:52 +0000 (10:07 +0000)
My assumption was wrong. We actually can use same as first input with any, *only if* the generate code does not clobber the first input. We use this for, e.g. DivZeroCheck, NullCheck.

This reverts commit 95bf7547986e68d4ac93b0a529aaa8eb3c998c1f.

Change-Id: Ib72d73fe580f5bc707b41c651f2c8936bd4e2407

compiler/optimizing/locations.h

index b36e574..de876be 100644 (file)
@@ -486,17 +486,11 @@ class LocationSummary : public ArenaObject<kArenaAllocMisc> {
 
   void SetOut(Location location, Location::OutputOverlap overlaps = Location::kOutputOverlap) {
     DCHECK(output_.IsInvalid());
-    if (kIsDebugBuild && location.IsUnallocated()) {
-      if ((location.GetPolicy() == Location::kSameAsFirstInput) && InAt(0).IsUnallocated()) {
-        DCHECK_NE(InAt(0).GetPolicy(), Location::kAny);
-      }
-    }
     output_overlaps_ = overlaps;
     output_ = location;
   }
 
   void UpdateOut(Location location) {
-    DCHECK(!location.IsUnallocated());
     // There are two reasons for updating an output:
     // 1) Parameters, where we only know the exact stack slot after
     //    doing full register allocation.