Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 775c8548 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Revert "MessageQueue: @NeverInline top level Concurrent/Legacy m..."" into main

parents d8fc4237 272941e1
Loading
Loading
Loading
Loading
+0 −43
Original line number Diff line number Diff line
@@ -39,7 +39,6 @@ import android.util.proto.ProtoOutputStream;
import com.android.internal.ravenwood.RavenwoodEnvironment;

import dalvik.annotation.optimization.NeverCompile;
import dalvik.annotation.optimization.NeverInline;

import java.io.FileDescriptor;
import java.lang.annotation.Retention;
@@ -238,7 +237,6 @@ public final class MessageQueue {
    private final MatchDeliverableMessages mMatchDeliverableMessages =
            new MatchDeliverableMessages();

    @NeverInline
    private boolean isIdleConcurrent() {
        final long now = SystemClock.uptimeMillis();

@@ -269,7 +267,6 @@ public final class MessageQueue {
        return true;
    }

    @NeverInline
    private boolean isIdleLegacy() {
        synchronized (this) {
            final long now = SystemClock.uptimeMillis();
@@ -292,14 +289,12 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void addIdleHandlerConcurrent(@NonNull IdleHandler handler) {
        synchronized (mIdleHandlersLock) {
            mIdleHandlers.add(handler);
        }
    }

    @NeverInline
    private void addIdleHandlerLegacy(@NonNull IdleHandler handler) {
        synchronized (this) {
            mIdleHandlers.add(handler);
@@ -326,15 +321,11 @@ public final class MessageQueue {
            addIdleHandlerLegacy(handler);
        }
    }

    @NeverInline
    private void removeIdleHandlerConcurrent(@NonNull IdleHandler handler) {
        synchronized (mIdleHandlersLock) {
            mIdleHandlers.remove(handler);
        }
    }

    @NeverInline
    private void removeIdleHandlerLegacy(@NonNull IdleHandler handler) {
        synchronized (this) {
            mIdleHandlers.remove(handler);
@@ -358,14 +349,12 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private boolean isPollingConcurrent() {
        // If the loop is quitting then it must not be idling.
        // We can assume mPtr != 0 when sQuitting is false.
        return !((boolean) sQuitting.getVolatile(this)) && nativeIsPolling(mPtr);
    }

    @NeverInline
    private boolean isPollingLegacy() {
        synchronized (this) {
            return isPollingLocked();
@@ -396,7 +385,6 @@ public final class MessageQueue {
        // We can assume mPtr != 0 when mQuitting is false.
        return !mQuitting && nativeIsPolling(mPtr);
    }
    @NeverInline
    private void addOnFileDescriptorEventListenerConcurrent(@NonNull FileDescriptor fd,
            @OnFileDescriptorEventListener.Events int events,
            @NonNull OnFileDescriptorEventListener listener) {
@@ -405,7 +393,6 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void addOnFileDescriptorEventListenerLegacy(@NonNull FileDescriptor fd,
            @OnFileDescriptorEventListener.Events int events,
            @NonNull OnFileDescriptorEventListener listener) {
@@ -455,14 +442,12 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeOnFileDescriptorEventListenerConcurrent(@NonNull FileDescriptor fd) {
        synchronized (mFileDescriptorRecordsLock) {
            updateOnFileDescriptorEventListenerLocked(fd, 0, null);
        }
    }

    @NeverInline
    private void removeOnFileDescriptorEventListenerLegacy(@NonNull FileDescriptor fd) {
        synchronized (this) {
            updateOnFileDescriptorEventListenerLocked(fd, 0, null);
@@ -796,7 +781,6 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private Message nextConcurrent() {
        final long ptr = mPtr;
        if (ptr == 0) {
@@ -871,7 +855,6 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private Message nextLegacy() {
        // Return here if the message loop has already quit and been disposed.
        // This can happen if the application tries to restart a looper after quit
@@ -1036,13 +1019,11 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private int postSyncBarrierConcurrent() {
        return postSyncBarrier(SystemClock.uptimeMillis());

    }

    @NeverInline
    private int postSyncBarrierLegacy() {
        return postSyncBarrier(SystemClock.uptimeMillis());
    }
@@ -1162,7 +1143,6 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeSyncBarrierConcurrent(int token) {
        boolean removed;
        MessageNode first;
@@ -1189,7 +1169,6 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeSyncBarrierLegacy(int token) {
        synchronized (this) {
            Message prev = null;
@@ -1249,7 +1228,6 @@ public final class MessageQueue {

    }

    @NeverInline
    private boolean enqueueMessageConcurrent(Message msg, long when) {
        if (msg.isInUse()) {
            throw new IllegalStateException(msg + " This message is already in use.");
@@ -1258,7 +1236,6 @@ public final class MessageQueue {
        return enqueueMessageUnchecked(msg, when);
    }

    @NeverInline
    private boolean enqueueMessageLegacy(Message msg, long when) {
        synchronized (this) {
            if (msg.isInUse()) {
@@ -1495,13 +1472,11 @@ public final class MessageQueue {
    private final MatchHandlerWhatAndObject mMatchHandlerWhatAndObject =
            new MatchHandlerWhatAndObject();

    @NeverInline
    private boolean hasMessagesConcurrent(Handler h, int what, Object object) {
        return findOrRemoveMessages(h, what, object, null, 0, mMatchHandlerWhatAndObject,
                false);
    }

    @NeverInline
    private boolean hasMessagesLegacy(Handler h, int what, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1540,13 +1515,11 @@ public final class MessageQueue {
    private final MatchHandlerWhatAndObjectEquals mMatchHandlerWhatAndObjectEquals =
            new MatchHandlerWhatAndObjectEquals();

    @NeverInline
    private boolean hasEqualMessagesConcurrent(Handler h, int what, Object object) {
        return findOrRemoveMessages(h, what, object, null, 0, mMatchHandlerWhatAndObjectEquals,
                false);
    }

    @NeverInline
    private boolean hasEqualMessagesLegacy(Handler h, int what, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1585,13 +1558,11 @@ public final class MessageQueue {
    private final MatchHandlerRunnableAndObject mMatchHandlerRunnableAndObject =
            new MatchHandlerRunnableAndObject();

    @NeverInline
    private boolean hasMessagesConcurrent(Handler h, Runnable r, Object object) {
        return findOrRemoveMessages(h, -1, object, r, 0, mMatchHandlerRunnableAndObject,
                false);
    }

    @NeverInline
    private boolean hasMessagesLegacy(Handler h, Runnable r, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1626,12 +1597,10 @@ public final class MessageQueue {
    }
    private final MatchHandler mMatchHandler = new MatchHandler();

    @NeverInline
    private boolean hasMessagesConcurrent(Handler h) {
        return findOrRemoveMessages(h, -1, null, null, 0, mMatchHandler, false);
    }

    @NeverInline
    private boolean hasMessagesLegacy(Handler h) {
        synchronized (this) {
            Message p = mMessages;
@@ -1656,12 +1625,10 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeMessagesConcurrent(Handler h, int what, Object object) {
        findOrRemoveMessages(h, what, object, null, 0, mMatchHandlerWhatAndObject, true);
    }

    @NeverInline
    private void removeMessagesLegacy(Handler h, int what, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1716,12 +1683,10 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeEqualMessagesConcurrent(Handler h, int what, Object object) {
            findOrRemoveMessages(h, what, object, null, 0, mMatchHandlerWhatAndObjectEquals, true);
    }

    @NeverInline
    private void removeEqualMessagesLegacy(Handler h, int what, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1777,12 +1742,10 @@ public final class MessageQueue {
        }
    }

    @NeverInline
    private void removeMessagesConcurrent(Handler h, Runnable r, Object object) {
        findOrRemoveMessages(h, -1, object, r, 0, mMatchHandlerRunnableAndObject, true);
    }

    @NeverInline
    private void removeMessagesLegacy(Handler h, Runnable r, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1852,12 +1815,10 @@ public final class MessageQueue {
    private final MatchHandlerRunnableAndObjectEquals mMatchHandlerRunnableAndObjectEquals =
            new MatchHandlerRunnableAndObjectEquals();

    @NeverInline
    private void removeEqualMessagesConcurrent(Handler h, Runnable r, Object object) {
        findOrRemoveMessages(h, -1, object, r, 0, mMatchHandlerRunnableAndObjectEquals, true);
    }

    @NeverInline
    private void removeEqualMessagesLegacy(Handler h, Runnable r, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -1926,12 +1887,10 @@ public final class MessageQueue {
    }
    private final MatchHandlerAndObject mMatchHandlerAndObject = new MatchHandlerAndObject();

    @NeverInline
    private void removeCallbacksAndMessagesConcurrent(Handler h, Object object) {
            findOrRemoveMessages(h, -1, object, null, 0, mMatchHandlerAndObject, true);
    }

    @NeverInline
    private void removeCallbacksAndMessagesLegacy(Handler h, Object object) {
        synchronized (this) {
            Message p = mMessages;
@@ -2000,12 +1959,10 @@ public final class MessageQueue {
    private final MatchHandlerAndObjectEquals mMatchHandlerAndObjectEquals =
            new MatchHandlerAndObjectEquals();

    @NeverInline
    void removeCallbacksAndEqualMessagesConcurrent(Handler h, Object object) {
        findOrRemoveMessages(h, -1, object, null, 0, mMatchHandlerAndObjectEquals, true);
    }

    @NeverInline
    void removeCallbacksAndEqualMessagesLegacy(Handler h, Object object) {
        synchronized (this) {
            Message p = mMessages;