source: branches/arm/lib/arm-backtrace.lisp @ 13918

Last change on this file since 13918 was 13918, checked in by gb, 9 years ago

Minimal ARM stack-walking stuff.

File size: 1.1 KB
Line 
1;;;-*-Mode: LISP; Package: CCL -*-
2;;;
3;;;   Copyright (C) 2010 Clozure Associates
4;;;   This file is part of Clozure CL. 
5;;;
6;;;   Clozure CL is licensed under the terms of the Lisp Lesser GNU Public
7;;;   License , known as the LLGPL and distributed with Clozure CL as the
8;;;   file "LICENSE".  The LLGPL consists of a preamble and the LGPL,
9;;;   which is distributed with Clozure CL as the file "LGPL".  Where these
10;;;   conflict, the preamble takes precedence. 
11;;;
12;;;   Clozure CL is referenced in the preamble as the "LIBRARY."
13;;;
14;;;   The LLGPL is also available online at
15;;;   http://opensource.franz.com/preamble.html
16
17(in-package "CCL")
18
19(defun cfp-lfun (p)
20  (if (and (typep p 'fixnum)
21           (lisp-frame-p p nil))
22    (%cfp-lfun p)))
23
24(defun catch-csp-p (p context)
25  (let ((catch (if context
26                 (bt.top-catch context)
27                 (%catch-top (%current-tcr)))))
28    (loop
29      (when (null catch) (return nil))
30      (let ((sp (catch-frame-sp catch)))
31        (when (eql sp p)
32          (return t)))
33      (setq catch (next-catch catch)))))
Note: See TracBrowser for help on using the repository browser.