< prev index next >

src/hotspot/os_cpu/bsd_zero/os_bsd_zero.cpp

Print this page
rev 59103 : imported patch hotspot


  73 
  74 frame os::current_frame() {
  75   // The only thing that calls this is the stack printing code in
  76   // VMError::report:
  77   //   - Step 110 (printing stack bounds) uses the sp in the frame
  78   //     to determine the amount of free space on the stack.  We
  79   //     set the sp to a close approximation of the real value in
  80   //     order to allow this step to complete.
  81   //   - Step 120 (printing native stack) tries to walk the stack.
  82   //     The frame we create has a NULL pc, which is ignored as an
  83   //     invalid frame.
  84   frame dummy = frame();
  85   dummy.set_sp((intptr_t *) current_stack_pointer());
  86   return dummy;
  87 }
  88 
  89 char* os::non_memory_address_word() {
  90   // Must never look like an address returned by reserve_memory,
  91   // even in its subfields (as defined by the CPU immediate fields,
  92   // if the CPU splits constants across multiple instructions).
  93 #ifdef SPARC
  94   // On SPARC, 0 != %hi(any real address), because there is no
  95   // allocation in the first 1Kb of the virtual address space.
  96   return (char *) 0;
  97 #else
  98   // This is the value for x86; works pretty well for PPC too.
  99   return (char *) -1;
 100 #endif // SPARC
 101 }
 102 
 103 address os::Bsd::ucontext_get_pc(const ucontext_t* uc) {
 104   ShouldNotCallThis();
 105   return NULL;
 106 }
 107 
 108 void os::Bsd::ucontext_set_pc(ucontext_t * uc, address pc) {
 109   ShouldNotCallThis();
 110 }
 111 
 112 ExtendedPC os::fetch_frame_from_context(const void* ucVoid,
 113                                         intptr_t** ret_sp,
 114                                         intptr_t** ret_fp) {
 115   ShouldNotCallThis();
 116   return ExtendedPC();
 117 }
 118 
 119 frame os::fetch_frame_from_context(const void* ucVoid) {
 120   ShouldNotCallThis();




  73 
  74 frame os::current_frame() {
  75   // The only thing that calls this is the stack printing code in
  76   // VMError::report:
  77   //   - Step 110 (printing stack bounds) uses the sp in the frame
  78   //     to determine the amount of free space on the stack.  We
  79   //     set the sp to a close approximation of the real value in
  80   //     order to allow this step to complete.
  81   //   - Step 120 (printing native stack) tries to walk the stack.
  82   //     The frame we create has a NULL pc, which is ignored as an
  83   //     invalid frame.
  84   frame dummy = frame();
  85   dummy.set_sp((intptr_t *) current_stack_pointer());
  86   return dummy;
  87 }
  88 
  89 char* os::non_memory_address_word() {
  90   // Must never look like an address returned by reserve_memory,
  91   // even in its subfields (as defined by the CPU immediate fields,
  92   // if the CPU splits constants across multiple instructions).





  93   // This is the value for x86; works pretty well for PPC too.
  94   return (char *) -1;

  95 }
  96 
  97 address os::Bsd::ucontext_get_pc(const ucontext_t* uc) {
  98   ShouldNotCallThis();
  99   return NULL;
 100 }
 101 
 102 void os::Bsd::ucontext_set_pc(ucontext_t * uc, address pc) {
 103   ShouldNotCallThis();
 104 }
 105 
 106 ExtendedPC os::fetch_frame_from_context(const void* ucVoid,
 107                                         intptr_t** ret_sp,
 108                                         intptr_t** ret_fp) {
 109   ShouldNotCallThis();
 110   return ExtendedPC();
 111 }
 112 
 113 frame os::fetch_frame_from_context(const void* ucVoid) {
 114   ShouldNotCallThis();


< prev index next >