1 /*
2  * Copyright (C) 2022 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.server.art;
18 
19 /**
20  * Represents the conditions where dexopt should be performed.
21  * See `OatFileAssistant::DexOptTrigger`.
22  *
23  * This is actually used as a bit field, but is declared as an enum because AIDL doesn't support bit
24  * fields.
25  *
26  * @hide
27  */
28 @Backing(type="int")
29 enum DexoptTrigger {
30     COMPILER_FILTER_IS_BETTER = 1 << 0,
31     COMPILER_FILTER_IS_SAME = 1 << 1,
32     COMPILER_FILTER_IS_WORSE = 1 << 2,
33     PRIMARY_BOOT_IMAGE_BECOMES_USABLE = 1 << 3,
34     NEED_EXTRACTION = 1 << 4,
35 }
36