Merge "Add back alpha atrace log" into mnc-dev
diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp
index 8f95e0d..9146b68 100644
--- a/libs/hwui/RenderNode.cpp
+++ b/libs/hwui/RenderNode.cpp
@@ -392,6 +392,13 @@
         }
         LOG_ALWAYS_FATAL_IF(!isLayer && properties().getHasOverlappingRendering());
         renderer.scaleAlpha(properties().getAlpha());
+
+        if (CC_UNLIKELY(ATRACE_ENABLED() && properties().promotedToLayer())) {
+            // pretend to cause savelayer to warn about performance problem affecting old versions
+            ATRACE_FORMAT("%s alpha caused saveLayer %dx%d", getName(),
+                    static_cast<int>(getWidth()),
+                    static_cast<int>(getHeight()));
+        }
     }
     if (clipFlags) {
         Rect clipRect;
diff --git a/libs/hwui/RenderProperties.h b/libs/hwui/RenderProperties.h
index a43566d..98029a8 100644
--- a/libs/hwui/RenderProperties.h
+++ b/libs/hwui/RenderProperties.h
@@ -576,15 +576,15 @@
                 && getOutline().getAlpha() != 0.0f;
     }
 
-    LayerType effectiveLayerType() const {
-        LayerType type = mLayerProperties.mType;
-        if (type == LayerType::None
+    bool promotedToLayer() const {
+        return mLayerProperties.mType == LayerType::None
                 && !MathUtils::isZero(mPrimitiveFields.mAlpha)
                 && mPrimitiveFields.mAlpha < 1
-                && mPrimitiveFields.mHasOverlappingRendering) {
-            return LayerType::RenderLayer;
-        }
-        return type;
+                && mPrimitiveFields.mHasOverlappingRendering;
+    }
+
+    LayerType effectiveLayerType() const {
+        return promotedToLayer() ? LayerType::RenderLayer : mLayerProperties.mType;
     }
 
 private:
diff --git a/libs/hwui/utils/TraceUtils.h b/libs/hwui/utils/TraceUtils.h
index ff8ccb8..ddc272c 100644
--- a/libs/hwui/utils/TraceUtils.h
+++ b/libs/hwui/utils/TraceUtils.h
@@ -35,7 +35,7 @@
     };
 
     static void atraceFormatBegin(const char* fmt, ...) {
-        if (CC_UNLIKELY(!ATRACE_ENABLED())) return;
+        if (CC_LIKELY(!ATRACE_ENABLED())) return;
 
         const int BUFFER_SIZE = 256;
         va_list ap;