📄 backtrace.h
字号:
// backtrace.h - Fallback backtrace implementation. i386 implementation./* Copyright (C) 2005 Free Software Foundation This file is part of libgcj.This software is copyrighted work licensed under the terms of theLibgcj License. Please consult the file "LIBGCJ_LICENSE" fordetails. */#ifndef __SYSDEP_BACKTRACE_H__#define __SYSDEP_BACKTRACE_H__#include <java-stack.h>#define HAVE_FALLBACK_BACKTRACE/* Store return addresses of the current program stack in STATE and return the exact number of values stored. */voidfallback_backtrace (_Jv_UnwindState *state){ register void *_ebp __asm__ ("ebp"); register void *_esp __asm__ ("esp"); unsigned int *rfp; int i = state->pos; for (rfp = *(unsigned int**)_ebp; rfp && i < state->length; rfp = *(unsigned int **)rfp) { int diff = *rfp - (unsigned int)rfp; if ((void*)rfp < _esp || diff > 4 * 1024 || diff < 0) break; state->frames[i].type = frame_native; state->frames[i].ip = (void*)(rfp[1]-4); i++; } state->pos = i;}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -