1ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm/* libunwind - a platform-independent unwind library
266100609bb7fb01811e64318bec3018d0bc9abd5homeip.net!davidm   Copyright (C) 2003-2004 Hewlett-Packard Co
3ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm	Contributed by David Mosberger-Tang <davidm@hpl.hp.com>
4ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
5ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmThis file is part of libunwind.
6ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
7ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmPermission is hereby granted, free of charge, to any person obtaining
8ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidma copy of this software and associated documentation files (the
9ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm"Software"), to deal in the Software without restriction, including
10ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmwithout limitation the rights to use, copy, modify, merge, publish,
11ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmdistribute, sublicense, and/or sell copies of the Software, and to
12ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmpermit persons to whom the Software is furnished to do so, subject to
13ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmthe following conditions:
14ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
15ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmThe above copyright notice and this permission notice shall be
16ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmincluded in all copies or substantial portions of the Software.
17ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
18ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
22ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  */
25ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
26ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm#include "unwind-internal.h"
27ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
28ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidmPROTECTED void *
29ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm_Unwind_FindEnclosingFunction (void *ip)
30ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm{
31ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm  unw_proc_info_t pi;
32ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
333842dac7333e42aa44531eda34ba55200b99ccf8Daniel Jacobowitz  if (unw_get_proc_info_by_ip (unw_local_addr_space,
343842dac7333e42aa44531eda34ba55200b99ccf8Daniel Jacobowitz			       (unw_word_t) (uintptr_t) ip, &pi, 0)
35ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm      < 0)
36ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm    return NULL;
37ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm
383842dac7333e42aa44531eda34ba55200b99ccf8Daniel Jacobowitz  return (void *) (uintptr_t) pi.start_ip;
39ec0b5955f7028fccfaf5b84021dd19331387643chp.com!davidm}
4066100609bb7fb01811e64318bec3018d0bc9abd5homeip.net!davidm
4166100609bb7fb01811e64318bec3018d0bc9abd5homeip.net!davidmvoid *__libunwind_Unwind_FindEnclosingFunction (void *)
4266100609bb7fb01811e64318bec3018d0bc9abd5homeip.net!davidm     ALIAS (_Unwind_FindEnclosingFunction);
43