# Copyright (C) 2015 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

#
# Configuration for MIPS_64
#

handler-style computed-goto
handler-size 128

# source for alternate entry stub
asm-alt-stub mips64/alt_stub.S

# file header and basic definitions
import mips64/header.S

# arch-specific entry point to interpreter
import mips64/entry.S

# Stub to switch to alternate interpreter
fallback-stub mips64/fallback.S

# opcode list; argument to op-start is default directory
op-start mips64
    # (override example:) op OP_SUB_FLOAT_2ADDR arm-vfp
    # (fallback example:) op OP_SUB_FLOAT_2ADDR FALLBACK

    op op_nop FALLBACK
    op op_move FALLBACK
    op op_move_from16 FALLBACK
    op op_move_16 FALLBACK
    op op_move_wide FALLBACK
    op op_move_wide_from16 FALLBACK
    op op_move_wide_16 FALLBACK
    op op_move_object FALLBACK
    op op_move_object_from16 FALLBACK
    op op_move_object_16 FALLBACK
    op op_move_result FALLBACK
    op op_move_result_wide FALLBACK
    op op_move_result_object FALLBACK
    op op_move_exception FALLBACK
    op op_return_void FALLBACK
    op op_return FALLBACK
    op op_return_wide FALLBACK
    op op_return_object FALLBACK
    op op_const_4 FALLBACK
    op op_const_16 FALLBACK
    op op_const FALLBACK
    op op_const_high16 FALLBACK
    op op_const_wide_16 FALLBACK
    op op_const_wide_32 FALLBACK
    op op_const_wide FALLBACK
    op op_const_wide_high16 FALLBACK
    op op_const_string FALLBACK
    op op_const_string_jumbo FALLBACK
    op op_const_class FALLBACK
    op op_monitor_enter FALLBACK
    op op_monitor_exit FALLBACK
    op op_check_cast FALLBACK
    op op_instance_of FALLBACK
    op op_array_length FALLBACK
    op op_new_instance FALLBACK
    op op_new_array FALLBACK
    op op_filled_new_array FALLBACK
    op op_filled_new_array_range FALLBACK
    op op_fill_array_data FALLBACK
    op op_throw FALLBACK
    op op_goto FALLBACK
    op op_goto_16 FALLBACK
    op op_goto_32 FALLBACK
    op op_packed_switch FALLBACK
    op op_sparse_switch FALLBACK
    op op_cmpl_float FALLBACK
    op op_cmpg_float FALLBACK
    op op_cmpl_double FALLBACK
    op op_cmpg_double FALLBACK
    op op_cmp_long FALLBACK
    op op_if_eq FALLBACK
    op op_if_ne FALLBACK
    op op_if_lt FALLBACK
    op op_if_ge FALLBACK
    op op_if_gt FALLBACK
    op op_if_le FALLBACK
    op op_if_eqz FALLBACK
    op op_if_nez FALLBACK
    op op_if_ltz FALLBACK
    op op_if_gez FALLBACK
    op op_if_gtz FALLBACK
    op op_if_lez FALLBACK
    op_unused_3e FALLBACK
    op_unused_3f FALLBACK
    op_unused_40 FALLBACK
    op_unused_41 FALLBACK
    op_unused_42 FALLBACK
    op_unused_43 FALLBACK
    op op_aget FALLBACK
    op op_aget_wide FALLBACK
    op op_aget_object FALLBACK
    op op_aget_boolean FALLBACK
    op op_aget_byte FALLBACK
    op op_aget_char FALLBACK
    op op_aget_short FALLBACK
    op op_aput FALLBACK
    op op_aput_wide FALLBACK
    op op_aput_object FALLBACK
    op op_aput_boolean FALLBACK
    op op_aput_byte FALLBACK
    op op_aput_char FALLBACK
    op op_aput_short FALLBACK
    op op_iget FALLBACK
    op op_iget_wide FALLBACK
    op op_iget_object FALLBACK
    op op_iget_boolean FALLBACK
    op op_iget_byte FALLBACK
    op op_iget_char FALLBACK
    op op_iget_short FALLBACK
    op op_iput FALLBACK
    op op_iput_wide FALLBACK
    op op_iput_object FALLBACK
    op op_iput_boolean FALLBACK
    op op_iput_byte FALLBACK
    op op_iput_char FALLBACK
    op op_iput_short FALLBACK
    op op_sget FALLBACK
    op op_sget_wide FALLBACK
    op op_sget_object FALLBACK
    op op_sget_boolean FALLBACK
    op op_sget_byte FALLBACK
    op op_sget_char FALLBACK
    op op_sget_short FALLBACK
    op op_sput FALLBACK
    op op_sput_wide FALLBACK
    op op_sput_object FALLBACK
    op op_sput_boolean FALLBACK
    op op_sput_byte FALLBACK
    op op_sput_char FALLBACK
    op op_sput_short FALLBACK
    op op_invoke_virtual FALLBACK
    op op_invoke_super FALLBACK
    op op_invoke_direct FALLBACK
    op op_invoke_static FALLBACK
    op op_invoke_interface FALLBACK
    op op_return_void_no_barrier FALLBACK
    op op_invoke_virtual_range FALLBACK
    op op_invoke_super_range FALLBACK
    op op_invoke_direct_range FALLBACK
    op op_invoke_static_range FALLBACK
    op op_invoke_interface_range FALLBACK
    op_unused_79 FALLBACK
    op_unused_7a FALLBACK
    op op_neg_int FALLBACK
    op op_not_int FALLBACK
    op op_neg_long FALLBACK
    op op_not_long FALLBACK
    op op_neg_float FALLBACK
    op op_neg_double FALLBACK
    op op_int_to_long FALLBACK
    op op_int_to_float FALLBACK
    op op_int_to_double FALLBACK
    op op_long_to_int FALLBACK
    op op_long_to_float FALLBACK
    op op_long_to_double FALLBACK
    op op_float_to_int FALLBACK
    op op_float_to_long FALLBACK
    op op_float_to_double FALLBACK
    op op_double_to_int FALLBACK
    op op_double_to_long FALLBACK
    op op_double_to_float FALLBACK
    op op_int_to_byte FALLBACK
    op op_int_to_char FALLBACK
    op op_int_to_short FALLBACK
    op op_add_int FALLBACK
    op op_sub_int FALLBACK
    op op_mul_int FALLBACK
    op op_div_int FALLBACK
    op op_rem_int FALLBACK
    op op_and_int FALLBACK
    op op_or_int FALLBACK
    op op_xor_int FALLBACK
    op op_shl_int FALLBACK
    op op_shr_int FALLBACK
    op op_ushr_int FALLBACK
    op op_add_long FALLBACK
    op op_sub_long FALLBACK
    op op_mul_long FALLBACK
    op op_div_long FALLBACK
    op op_rem_long FALLBACK
    op op_and_long FALLBACK
    op op_or_long FALLBACK
    op op_xor_long FALLBACK
    op op_shl_long FALLBACK
    op op_shr_long FALLBACK
    op op_ushr_long FALLBACK
    op op_add_float FALLBACK
    op op_sub_float FALLBACK
    op op_mul_float FALLBACK
    op op_div_float FALLBACK
    op op_rem_float FALLBACK
    op op_add_double FALLBACK
    op op_sub_double FALLBACK
    op op_mul_double FALLBACK
    op op_div_double FALLBACK
    op op_rem_double FALLBACK
    op op_add_int_2addr FALLBACK
    op op_sub_int_2addr FALLBACK
    op op_mul_int_2addr FALLBACK
    op op_div_int_2addr FALLBACK
    op op_rem_int_2addr FALLBACK
    op op_and_int_2addr FALLBACK
    op op_or_int_2addr FALLBACK
    op op_xor_int_2addr FALLBACK
    op op_shl_int_2addr FALLBACK
    op op_shr_int_2addr FALLBACK
    op op_ushr_int_2addr FALLBACK
    op op_add_long_2addr FALLBACK
    op op_sub_long_2addr FALLBACK
    op op_mul_long_2addr FALLBACK
    op op_div_long_2addr FALLBACK
    op op_rem_long_2addr FALLBACK
    op op_and_long_2addr FALLBACK
    op op_or_long_2addr FALLBACK
    op op_xor_long_2addr FALLBACK
    op op_shl_long_2addr FALLBACK
    op op_shr_long_2addr FALLBACK
    op op_ushr_long_2addr FALLBACK
    op op_add_float_2addr FALLBACK
    op op_sub_float_2addr FALLBACK
    op op_mul_float_2addr FALLBACK
    op op_div_float_2addr FALLBACK
    op op_rem_float_2addr FALLBACK
    op op_add_double_2addr FALLBACK
    op op_sub_double_2addr FALLBACK
    op op_mul_double_2addr FALLBACK
    op op_div_double_2addr FALLBACK
    op op_rem_double_2addr FALLBACK
    op op_add_int_lit16 FALLBACK
    op op_rsub_int FALLBACK
    op op_mul_int_lit16 FALLBACK
    op op_div_int_lit16 FALLBACK
    op op_rem_int_lit16 FALLBACK
    op op_and_int_lit16 FALLBACK
    op op_or_int_lit16 FALLBACK
    op op_xor_int_lit16 FALLBACK
    op op_add_int_lit8 FALLBACK
    op op_rsub_int_lit8 FALLBACK
    op op_mul_int_lit8 FALLBACK
    op op_div_int_lit8 FALLBACK
    op op_rem_int_lit8 FALLBACK
    op op_and_int_lit8 FALLBACK
    op op_or_int_lit8 FALLBACK
    op op_xor_int_lit8 FALLBACK
    op op_shl_int_lit8 FALLBACK
    op op_shr_int_lit8 FALLBACK
    op op_ushr_int_lit8 FALLBACK
    op op_iget_quick FALLBACK
    op op_iget_wide_quick FALLBACK
    op op_iget_object_quick FALLBACK
    op op_iput_quick FALLBACK
    op op_iput_wide_quick FALLBACK
    op op_iput_object_quick FALLBACK
    op op_invoke_virtual_quick FALLBACK
    op op_invoke_virtual_range_quick FALLBACK
    op op_iput_boolean_quick FALLBACK
    op op_iput_byte_quick FALLBACK
    op op_iput_char_quick FALLBACK
    op op_iput_short_quick FALLBACK
    op op_iget_boolean_quick FALLBACK
    op op_iget_byte_quick FALLBACK
    op op_iget_char_quick FALLBACK
    op op_iget_short_quick FALLBACK
    op_unused_f3 FALLBACK
    op_unused_f4 FALLBACK
    op_unused_f5 FALLBACK
    op_unused_f6 FALLBACK
    op_unused_f7 FALLBACK
    op_unused_f8 FALLBACK
    op_unused_f9 FALLBACK
    op_unused_fa FALLBACK
    op_unused_fb FALLBACK
    op_unused_fc FALLBACK
    op_unused_fd FALLBACK
    op_unused_fe FALLBACK
    op_unused_ff FALLBACK
op-end

# common subroutines for asm
import mips64/footer.S
