OLD | NEW |
1 /* Copyright (C) 2010, 2012 Free Software Foundation, Inc. | 1 /* Copyright (C) 2010, 2012 Free Software Foundation, Inc. |
2 | 2 |
3 This file is part of GDB. | 3 This file is part of GDB. |
4 | 4 |
5 This program is free software; you can redistribute it and/or modify | 5 This program is free software; you can redistribute it and/or modify |
6 it under the terms of the GNU General Public License as published by | 6 it under the terms of the GNU General Public License as published by |
7 the Free Software Foundation; either version 3 of the License, or | 7 the Free Software Foundation; either version 3 of the License, or |
8 (at your option) any later version. | 8 (at your option) any later version. |
9 | 9 |
10 This program is distributed in the hope that it will be useful, | 10 This program is distributed in the hope that it will be useful, |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
147 { | 147 { |
148 ptid_t new_ptid; | 148 ptid_t new_ptid; |
149 | 149 |
150 new_ptid = super_to_wait (ops, ptid, ourstatus, options); | 150 new_ptid = super_to_wait (ops, ptid, ourstatus, options); |
151 | 151 |
152 /* If this is a DLD event (hard-coded breakpoint instruction | 152 /* If this is a DLD event (hard-coded breakpoint instruction |
153 that was activated by the solib-ia64-hpux module), we need to | 153 that was activated by the solib-ia64-hpux module), we need to |
154 process it, and then resume the execution as if the event did | 154 process it, and then resume the execution as if the event did |
155 not happen. */ | 155 not happen. */ |
156 if (ourstatus->kind == TARGET_WAITKIND_STOPPED | 156 if (ourstatus->kind == TARGET_WAITKIND_STOPPED |
157 && ourstatus->value.sig == TARGET_SIGNAL_TRAP | 157 && ourstatus->value.sig == GDB_SIGNAL_TRAP |
158 && ia64_hpux_at_dld_breakpoint_p (new_ptid)) | 158 && ia64_hpux_at_dld_breakpoint_p (new_ptid)) |
159 { | 159 { |
160 ia64_hpux_handle_dld_breakpoint (new_ptid); | 160 ia64_hpux_handle_dld_breakpoint (new_ptid); |
161 | 161 |
162 target_resume (new_ptid, 0, TARGET_SIGNAL_0); | 162 target_resume (new_ptid, 0, GDB_SIGNAL_0); |
163 ourstatus->kind = TARGET_WAITKIND_IGNORE; | 163 ourstatus->kind = TARGET_WAITKIND_IGNORE; |
164 } | 164 } |
165 | 165 |
166 return new_ptid; | 166 return new_ptid; |
167 } | 167 } |
168 | 168 |
169 /* Fetch the RNAT register and supply it to the REGCACHE. */ | 169 /* Fetch the RNAT register and supply it to the REGCACHE. */ |
170 | 170 |
171 static void | 171 static void |
172 ia64_hpux_fetch_rnat_register (struct regcache *regcache) | 172 ia64_hpux_fetch_rnat_register (struct regcache *regcache) |
(...skipping 499 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
672 | 672 |
673 /* On this platform, the process still exists even after we received | 673 /* On this platform, the process still exists even after we received |
674 an exit event. Detaching from the process isn't sufficient either, | 674 an exit event. Detaching from the process isn't sufficient either, |
675 as it only turns the process into a zombie. So the only solution | 675 as it only turns the process into a zombie. So the only solution |
676 we found is to kill it. */ | 676 we found is to kill it. */ |
677 ttrace (TT_PROC_EXIT, pid, 0, 0, 0, 0); | 677 ttrace (TT_PROC_EXIT, pid, 0, 0, 0, 0); |
678 wait (&status); | 678 wait (&status); |
679 } | 679 } |
680 | 680 |
681 /* Prevent warning from -Wmissing-prototypes. */ | 681 /* Prevent warning from -Wmissing-prototypes. */ |
682 void _initialize_hppa_hpux_nat (void); | 682 void _initialize_ia64_hpux_nat (void); |
683 | 683 |
684 void | 684 void |
685 _initialize_hppa_hpux_nat (void) | 685 _initialize_ia64_hpux_nat (void) |
686 { | 686 { |
687 struct target_ops *t; | 687 struct target_ops *t; |
688 | 688 |
689 t = inf_ttrace_target (); | 689 t = inf_ttrace_target (); |
690 super_to_wait = t->to_wait; | 690 super_to_wait = t->to_wait; |
691 super_xfer_partial = t->to_xfer_partial; | 691 super_xfer_partial = t->to_xfer_partial; |
692 super_mourn_inferior = t->to_mourn_inferior; | 692 super_mourn_inferior = t->to_mourn_inferior; |
693 | 693 |
694 t->to_wait = ia64_hpux_wait; | 694 t->to_wait = ia64_hpux_wait; |
695 t->to_fetch_registers = ia64_hpux_fetch_registers; | 695 t->to_fetch_registers = ia64_hpux_fetch_registers; |
696 t->to_store_registers = ia64_hpux_store_registers; | 696 t->to_store_registers = ia64_hpux_store_registers; |
697 t->to_xfer_partial = ia64_hpux_xfer_partial; | 697 t->to_xfer_partial = ia64_hpux_xfer_partial; |
698 t->to_can_use_hw_breakpoint = ia64_hpux_can_use_hw_breakpoint; | 698 t->to_can_use_hw_breakpoint = ia64_hpux_can_use_hw_breakpoint; |
699 t->to_mourn_inferior = ia64_hpux_mourn_inferior; | 699 t->to_mourn_inferior = ia64_hpux_mourn_inferior; |
700 t->to_attach_no_wait = 1; | 700 t->to_attach_no_wait = 1; |
701 | 701 |
702 add_target (t); | 702 add_target (t); |
703 } | 703 } |
OLD | NEW |