TemplateOpList.h revision a8b91c52fd8a90b784835dfe1f8898035266c4dd
1/*
2 * Copyright (C) 2009 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/*
18 * Dalvik opcode list that uses additional templates to complete JIT execution.
19 */
20#ifndef JIT_TEMPLATE
21#define JIT_TEMPLATE(X)
22#endif
23
24JIT_TEMPLATE(CMP_LONG)
25JIT_TEMPLATE(RETURN)
26JIT_TEMPLATE(INVOKE_METHOD_NO_OPT)
27JIT_TEMPLATE(INVOKE_METHOD_CHAIN)
28JIT_TEMPLATE(INVOKE_METHOD_PREDICTED_CHAIN)
29JIT_TEMPLATE(INVOKE_METHOD_NATIVE)
30JIT_TEMPLATE(MUL_LONG)
31JIT_TEMPLATE(SHL_LONG)
32JIT_TEMPLATE(SHR_LONG)
33JIT_TEMPLATE(USHR_LONG)
34JIT_TEMPLATE(ADD_FLOAT_VFP)
35JIT_TEMPLATE(SUB_FLOAT_VFP)
36JIT_TEMPLATE(MUL_FLOAT_VFP)
37JIT_TEMPLATE(DIV_FLOAT_VFP)
38JIT_TEMPLATE(ADD_DOUBLE_VFP)
39JIT_TEMPLATE(SUB_DOUBLE_VFP)
40JIT_TEMPLATE(MUL_DOUBLE_VFP)
41JIT_TEMPLATE(DIV_DOUBLE_VFP)
42JIT_TEMPLATE(DOUBLE_TO_FLOAT_VFP)
43JIT_TEMPLATE(DOUBLE_TO_INT_VFP)
44JIT_TEMPLATE(FLOAT_TO_DOUBLE_VFP)
45JIT_TEMPLATE(FLOAT_TO_INT_VFP)
46JIT_TEMPLATE(INT_TO_DOUBLE_VFP)
47JIT_TEMPLATE(INT_TO_FLOAT_VFP)
48JIT_TEMPLATE(CMPG_DOUBLE_VFP)
49JIT_TEMPLATE(CMPL_DOUBLE_VFP)
50JIT_TEMPLATE(CMPG_FLOAT_VFP)
51JIT_TEMPLATE(CMPL_FLOAT_VFP)
52JIT_TEMPLATE(SQRT_DOUBLE_VFP)
53JIT_TEMPLATE(THROW_EXCEPTION_COMMON)
54JIT_TEMPLATE(MEM_OP_DECODE)
55JIT_TEMPLATE(STRING_COMPARETO)
56JIT_TEMPLATE(STRING_INDEXOF)
57JIT_TEMPLATE(INTERPRET)
58JIT_TEMPLATE(MONITOR_ENTER)
59JIT_TEMPLATE(MONITOR_ENTER_DEBUG)
60JIT_TEMPLATE(RESTORE_STATE)
61JIT_TEMPLATE(SAVE_STATE)
62JIT_TEMPLATE(PERIODIC_PROFILING)
63JIT_TEMPLATE(RETURN_PROF)
64JIT_TEMPLATE(INVOKE_METHOD_NO_OPT_PROF)
65JIT_TEMPLATE(INVOKE_METHOD_CHAIN_PROF)
66JIT_TEMPLATE(INVOKE_METHOD_PREDICTED_CHAIN_PROF)
67JIT_TEMPLATE(INVOKE_METHOD_NATIVE_PROF)
68