gccint: Miscellaneous routines

1 
1 4.6 Miscellaneous runtime library routines
1 ==========================================
1 
1 4.6.1 Cache control functions
1 -----------------------------
1 
1  -- Runtime Function: void __clear_cache (char *BEG, char *END)
1      This function clears the instruction cache between BEG and END.
1 
1 4.6.2 Split stack functions and variables
1 -----------------------------------------
1 
1  -- Runtime Function: void * __splitstack_find (void *SEGMENT_ARG, void
1           *SP, size_t LEN, void **NEXT_SEGMENT, void **NEXT_SP, void
1           **INITIAL_SP)
1      When using '-fsplit-stack', this call may be used to iterate over
1      the stack segments.  It may be called like this:
1             void *next_segment = NULL;
1             void *next_sp = NULL;
1             void *initial_sp = NULL;
1             void *stack;
1             size_t stack_size;
1             while ((stack = __splitstack_find (next_segment, next_sp,
1                                                &stack_size, &next_segment,
1                                                &next_sp, &initial_sp))
1                    != NULL)
1               {
1                 /* Stack segment starts at stack and is
1                    stack_size bytes long.  */
1               }
1 
1      There is no way to iterate over the stack segments of a different
1      thread.  However, what is permitted is for one thread to call this
1      with the SEGMENT_ARG and SP arguments NULL, to pass NEXT_SEGMENT,
1      NEXT_SP, and INITIAL_SP to a different thread, and then to suspend
1      one way or another.  A different thread may run the subsequent
1      '__splitstack_find' iterations.  Of course, this will only work if
1      the first thread is suspended while the second thread is calling
1      '__splitstack_find'.  If not, the second thread could be looking at
1      the stack while it is changing, and anything could happen.
1 
1  -- Variable: __morestack_segments
1  -- Variable: __morestack_current_segment
1  -- Variable: __morestack_initial_sp
1      Internal variables used by the '-fsplit-stack' implementation.
1