Home | History | Annotate | Download | only in mterp
      1 # Copyright (C) 2008 The Android Open Source Project
      2 #
      3 # Licensed under the Apache License, Version 2.0 (the "License");
      4 # you may not use this file except in compliance with the License.
      5 # You may obtain a copy of the License at
      6 #
      7 #      http://www.apache.org/licenses/LICENSE-2.0
      8 #
      9 # Unless required by applicable law or agreed to in writing, software
     10 # distributed under the License is distributed on an "AS IS" BASIS,
     11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     12 # See the License for the specific language governing permissions and
     13 # limitations under the License.
     14 
     15 #
     16 # Configuration for "desktop" targets.
     17 #
     18 
     19 handler-style jump-table
     20 
     21 # source for the instruction table stub
     22 asm-stub x86/stub.S
     23 
     24 # source for alternate entry stub
     25 asm-alt-stub x86/alt_stub.S
     26 
     27 # C file header and basic definitions
     28 import c/header.cpp
     29 import x86/header.S
     30 
     31 # C pre-processor defines for stub C instructions
     32 import cstubs/stubdefs.cpp
     33 
     34 # common defs for the C opcodes
     35 import c/opcommon.cpp
     36 
     37 # opcode list; argument to op-start is default directory
     38 op-start x86
     39     # stub -- need native impl
     40     op OP_EXECUTE_INLINE_RANGE c
     41     op OP_IGET_WIDE_VOLATILE c
     42     op OP_IPUT_WIDE_VOLATILE c
     43     op OP_SGET_WIDE_VOLATILE c
     44     op OP_SPUT_WIDE_VOLATILE c
     45     op OP_RETURN_VOID_BARRIER c
     46     op OP_INVOKE_OBJECT_INIT_RANGE c
     47 
     48     op OP_INVOKE_OBJECT_INIT_JUMBO c
     49     op OP_IGET_VOLATILE_JUMBO c
     50     op OP_IPUT_VOLATILE_JUMBO c
     51     op OP_SGET_VOLATILE_JUMBO c
     52     op OP_SPUT_VOLATILE_JUMBO c
     53     op OP_IGET_OBJECT_VOLATILE_JUMBO c
     54     op OP_IPUT_OBJECT_VOLATILE_JUMBO c
     55     op OP_SGET_OBJECT_VOLATILE_JUMBO c
     56     op OP_SPUT_OBJECT_VOLATILE_JUMBO c
     57     op OP_IGET_WIDE_VOLATILE_JUMBO c
     58     op OP_IPUT_WIDE_VOLATILE_JUMBO c
     59     op OP_SGET_WIDE_VOLATILE_JUMBO c
     60     op OP_SPUT_WIDE_VOLATILE_JUMBO c
     61 
     62     alt OP_DISPATCH_FF x86
     63 op-end
     64 
     65 # arch-specific entry point to interpreter
     66 import x86/entry.S
     67 
     68 # "helper" code for C; include if you use any of the C stubs (this generates
     69 # object code, so it's normally excluded)
     70 # (asm code is currently calling into dvmMterp_exceptionThrown)
     71 import c/gotoTargets.cpp
     72 
     73 # end of defs; include this when cstubs/stubdefs.cpp is included
     74 import cstubs/enddefs.cpp
     75 
     76 # common subroutines for asm
     77 import x86/footer.S
     78