__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

kentishfootball@216.73.216.211: ~ $
/**************************************************************************/
/*                                                                        */
/*                                 OCaml                                  */
/*                                                                        */
/*             Xavier Leroy, projet Cristal, INRIA Rocquencourt           */
/*                                                                        */
/*   Copyright 2001 Institut National de Recherche en Informatique et     */
/*     en Automatique.                                                    */
/*                                                                        */
/*   All rights reserved.  This file is distributed under the terms of    */
/*   the GNU Lesser General Public License version 2.1, with the          */
/*   special exception on linking described in the file LICENSE.          */
/*                                                                        */
/**************************************************************************/

#ifndef CAML_BACKTRACE_PRIM_H
#define CAML_BACKTRACE_PRIM_H

#ifdef CAML_INTERNALS

#include "backtrace.h"

/* Backtrace generation is split in [backtrace.c] and [backtrace_prim.c].
 *
 * [backtrace_prim.c] contains all backend-specific code, and has two different
 * implementations in [byterun/backtrace_prim.c] and [asmrun/backtrace_prim.c].
 *
 * [backtrace.c] has a unique implementation, and expose a uniform
 * higher level API above [backtrace_prim.c].
 */

/* Extract location information for the given raw_backtrace_slot */

struct caml_loc_info {
  int loc_valid;
  int loc_is_raise;
  char * loc_filename;
  int loc_lnum;
  int loc_startchr;
  int loc_endchr;
  int loc_is_inlined;
};

/* When compiling with -g, backtrace slots have debug info associated.
 * When a call is inlined in native mode, debuginfos form a linked list.
 */
typedef void * debuginfo;

/* Check availability of debug information before extracting a trace.
 * Relevant for bytecode, always true for native code. */
int caml_debug_info_available(void);

/* Return debuginfo associated to a slot or NULL. */
debuginfo caml_debuginfo_extract(backtrace_slot slot);

/* In case of an inlined call return next debuginfo or NULL otherwise. */
debuginfo caml_debuginfo_next(debuginfo dbg);

/* Extract locations from backtrace_slot */
void caml_debuginfo_location(debuginfo dbg, /*out*/ struct caml_loc_info * li);

/* In order to prevent the GC from walking through the debug
   information (which have no headers), we transform slots to 31/63 bits
   ocaml integers by shifting them by 1 to the right. We do not lose
   information as slots are aligned.

   In particular, we do not need to use [caml_modify] when setting
   an array element with such a value.
 */
#define Val_backtrace_slot(bslot) (Val_long(((uintnat)(bslot))>>1))
#define Backtrace_slot_val(vslot) ((backtrace_slot)(Long_val(vslot) << 1))

/* Allocate the caml_backtrace_buffer. Returns 0 on success, -1 otherwise */
int caml_alloc_backtrace_buffer(void);

#define BACKTRACE_BUFFER_SIZE 1024

/* Besides decoding backtrace info, [backtrace_prim] has two other
 * responsibilities:
 *
 * It defines the [caml_stash_backtrace] function, which is called to quickly
 * fill the backtrace buffer by walking the stack when an exception is raised.
 *
 * It also defines the [caml_get_current_callstack] OCaml primitive, which also
 * walks the stack but directly turns it into a [raw_backtrace] and is called
 * explicitly.
 */

#endif /* CAML_INTERNALS */

#endif /* CAML_BACKTRACE_PRIM_H */

Filemanager

Name Type Size Permission Actions
address_class.h File 3.22 KB 0644
alloc.h File 3.27 KB 0644
backtrace.h File 5.42 KB 0644
backtrace_prim.h File 3.53 KB 0644
bigarray.h File 4.75 KB 0644
callback.h File 2.41 KB 0644
compact.h File 1.34 KB 0644
compare.h File 1.22 KB 0644
compatibility.h File 12.92 KB 0644
config.h File 7.75 KB 0644
custom.h File 2.65 KB 0644
debugger.h File 4.95 KB 0644
dynlink.h File 1.87 KB 0644
exec.h File 2.39 KB 0644
fail.h File 3.86 KB 0644
finalise.h File 1.6 KB 0644
fix_code.h File 1.79 KB 0644
freelist.h File 1.56 KB 0644
gc.h File 3.45 KB 0644
gc_ctrl.h File 2.04 KB 0644
globroots.h File 1.37 KB 0644
hash.h File 1.64 KB 0644
hooks.h File 1.48 KB 0644
instrtrace.h File 1.51 KB 0644
instruct.h File 2.77 KB 0644
int64_emul.h File 6.77 KB 0644
int64_format.h File 3.57 KB 0644
int64_native.h File 2.98 KB 0644
interp.h File 1.57 KB 0644
intext.h File 7.79 KB 0644
io.h File 5.02 KB 0644
jumptbl.h File 2.39 KB 0644
major_gc.h File 3.31 KB 0644
md5.h File 1.96 KB 0644
memory.h File 17.13 KB 0644
minor_gc.h File 4.36 KB 0644
misc.h File 14.2 KB 0644
mlvalues.h File 12.23 KB 0644
osdeps.h File 4.37 KB 0644
prims.h File 1.57 KB 0644
printexc.h File 1.37 KB 0644
reverse.h File 5.65 KB 0644
roots.h File 1.92 KB 0644
signals.h File 2.32 KB 0644
signals_machdep.h File 2.47 KB 0644
socketaddr.h File 2.16 KB 0644
spacetime.h File 8.37 KB 0644
stack.h File 4.53 KB 0644
stacks.h File 1.79 KB 0644
startup.h File 2.12 KB 0644
startup_aux.h File 1.6 KB 0644
sys.h File 1.63 KB 0644
threads.h File 3.12 KB 0644
ui.h File 1.44 KB 0644
unixsupport.h File 1.95 KB 0644
version.h File 193 B 0644
weak.h File 3.05 KB 0644
Filemanager