1e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm/* libunwind - a platform-independent unwind library
2e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm   Copyright (C) 2003 Hewlett-Packard Co
3e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm	Contributed by ...
4e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
5e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmThis file is part of libunwind.
6e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
7e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmPermission is hereby granted, free of charge, to any person obtaining
8e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidma copy of this software and associated documentation files (the
9e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm"Software"), to deal in the Software without restriction, including
10e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmwithout limitation the rights to use, copy, modify, merge, publish,
11e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmdistribute, sublicense, and/or sell copies of the Software, and to
12e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmpermit persons to whom the Software is furnished to do so, subject to
13e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmthe following conditions:
14e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
15e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmThe above copyright notice and this permission notice shall be
16e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmincluded in all copies or substantial portions of the Software.
17e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
18e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
22e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
23e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmOF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmWITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  */
25e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
26e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm#include "unwind_i.h"
27e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm#include "init.h"
28e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
29e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm#ifdef UNW_REMOTE_ONLY
30e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
31e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmPROTECTED int
32e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmunw_init_local (unw_cursor_t *cursor, ucontext_t *uc)
33e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm{
34e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm  return -UNW_EINVAL;
35e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm}
36e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
37e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm#else /* !UNW_REMOTE_ONLY */
38e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
39e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmPROTECTED int
40e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidmunw_init_local (unw_cursor_t *cursor, ucontext_t *uc)
41e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm{
42e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm  struct cursor *c = (struct cursor *) cursor;
43e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
445d0f376b08126b51a001d7cdfba1ec4e0d644f54Tommi Rantala  if (!tdep_init_done)
4593599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm    tdep_init ();
4693599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm
4793599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm  Debug (1, "(cursor=%p)\n", c);
4893599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm
4993599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm  c->dwarf.as = unw_local_addr_space;
5093599dc2785792fcbac017008ef5b7c211c1e622mostang.com!davidm  c->dwarf.as_arg = uc;
510996405de25a3aab5045d20803c8f0a5441d0c57Christopher Ferris
52a9dce3c06e6ffcb83957e734d960505415118f00Lassi Tuura  return common_init (c, 1);
53e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm}
54e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm
55e15e32e4687f78af964ec4b60c8e00bf0e6ba2eahomeip.net!davidm#endif /* !UNW_REMOTE_ONLY */
56