src/cpu/sparc/vm/assembler_sparc.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File 6689060 Sdiff src/cpu/sparc/vm

src/cpu/sparc/vm/assembler_sparc.hpp

Print this page




1981   void store_klass(Register dst_oop, Register s1);
1982 
1983    // oop manipulations
1984   void load_heap_oop(const Address& s, Register d, int offset = 0);
1985   void load_heap_oop(Register s1, Register s2, Register d);
1986   void load_heap_oop(Register s1, int simm13a, Register d);
1987   void store_heap_oop(Register d, Register s1, Register s2);
1988   void store_heap_oop(Register d, Register s1, int simm13a);
1989   void store_heap_oop(Register d, const Address& a, int offset = 0);
1990 
1991   void encode_heap_oop(Register src, Register dst);
1992   void encode_heap_oop(Register r) {
1993     encode_heap_oop(r, r);
1994   }
1995   void decode_heap_oop(Register src, Register dst);
1996   void decode_heap_oop(Register r) {
1997     decode_heap_oop(r, r);
1998   }
1999   void encode_heap_oop_not_null(Register r);
2000   void decode_heap_oop_not_null(Register r);


2001 
2002   // Support for managing the JavaThread pointer (i.e.; the reference to
2003   // thread-local information).
2004   void get_thread();                                // load G2_thread
2005   void verify_thread();                             // verify G2_thread contents
2006   void save_thread   (const Register threache); // save to cache
2007   void restore_thread(const Register thread_cache); // restore from cache
2008 
2009   // Support for last Java frame (but use call_VM instead where possible)
2010   void set_last_Java_frame(Register last_java_sp, Register last_Java_pc);
2011   void reset_last_Java_frame(void);
2012 
2013   // Call into the VM.
2014   // Passes the thread pointer (in O0) as a prepended argument.
2015   // Makes sure oop return values are visible to the GC.
2016   void call_VM(Register oop_result, address entry_point, int number_of_arguments = 0, bool check_exceptions = true);
2017   void call_VM(Register oop_result, address entry_point, Register arg_1, bool check_exceptions = true);
2018   void call_VM(Register oop_result, address entry_point, Register arg_1, Register arg_2, bool check_exceptions = true);
2019   void call_VM(Register oop_result, address entry_point, Register arg_1, Register arg_2, Register arg_3, bool check_exceptions = true);
2020 




1981   void store_klass(Register dst_oop, Register s1);
1982 
1983    // oop manipulations
1984   void load_heap_oop(const Address& s, Register d, int offset = 0);
1985   void load_heap_oop(Register s1, Register s2, Register d);
1986   void load_heap_oop(Register s1, int simm13a, Register d);
1987   void store_heap_oop(Register d, Register s1, Register s2);
1988   void store_heap_oop(Register d, Register s1, int simm13a);
1989   void store_heap_oop(Register d, const Address& a, int offset = 0);
1990 
1991   void encode_heap_oop(Register src, Register dst);
1992   void encode_heap_oop(Register r) {
1993     encode_heap_oop(r, r);
1994   }
1995   void decode_heap_oop(Register src, Register dst);
1996   void decode_heap_oop(Register r) {
1997     decode_heap_oop(r, r);
1998   }
1999   void encode_heap_oop_not_null(Register r);
2000   void decode_heap_oop_not_null(Register r);
2001   void encode_heap_oop_not_null(Register src, Register dst);
2002   void decode_heap_oop_not_null(Register src, Register dst);
2003 
2004   // Support for managing the JavaThread pointer (i.e.; the reference to
2005   // thread-local information).
2006   void get_thread();                                // load G2_thread
2007   void verify_thread();                             // verify G2_thread contents
2008   void save_thread   (const Register threache); // save to cache
2009   void restore_thread(const Register thread_cache); // restore from cache
2010 
2011   // Support for last Java frame (but use call_VM instead where possible)
2012   void set_last_Java_frame(Register last_java_sp, Register last_Java_pc);
2013   void reset_last_Java_frame(void);
2014 
2015   // Call into the VM.
2016   // Passes the thread pointer (in O0) as a prepended argument.
2017   // Makes sure oop return values are visible to the GC.
2018   void call_VM(Register oop_result, address entry_point, int number_of_arguments = 0, bool check_exceptions = true);
2019   void call_VM(Register oop_result, address entry_point, Register arg_1, bool check_exceptions = true);
2020   void call_VM(Register oop_result, address entry_point, Register arg_1, Register arg_2, bool check_exceptions = true);
2021   void call_VM(Register oop_result, address entry_point, Register arg_1, Register arg_2, Register arg_3, bool check_exceptions = true);
2022 


src/cpu/sparc/vm/assembler_sparc.hpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File