Fix lwp_suspend/unsuspend imbalance in linux_wait_1
[deliverable/binutils-gdb.git] / gdb / gdbserver / ChangeLog
index 644a81088fe62821eaecaf5a57d501dbe7d12f44..4dc2e451ea6dd93495b3b160d33636a75033ff53 100644 (file)
@@ -1,3 +1,617 @@
+2016-08-31  Antoine Tremblay  <antoine.tremblay@ericsson.com>
+
+       * linux-low.c (linux_wait_1): Move event switch after unsuspend_lwps.
+
+2016-08-25  Adhemerval Zanella  <adhemerval.zanella@linaro.org>
+
+       PR server/20491
+       * gdb_proc_service.h (ps_get_thread_area): Remove const from struct
+       ps_prochandle.
+       * linux-aarch64-low.c (ps_get_thread_area): Likewise.
+       * linux-arm-low.c (ps_get_thread_area): Likewise.
+       * linux-crisv32-low.c (ps_get_thread_area): Likewise.
+       * linux-m68k-low.c (ps_get_thread_area): Likewise.
+       * linux-mips-low.c (ps_get_thread_area): Likewise.
+       * linux-nios2-low.c (ps_get_thread_area): Likewise.
+       * linux-tic6x-low.c (ps_get_thread_area): Likewise.
+       * linux-x86-low.c (ps_get_thread_area): Likewise.
+       * linux-xtensa-low.c (ps_get_thread_area): Likewise.
+
+2016-08-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-x86-low.c (amd64_emit_call): Emit missing call opcode.
+
+2016-08-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-x86-low.c (amd64_install_fast_tracepoint_jump_pad): Fix
+       comment.  Use memcpy instead of casting through unsigned long.
+
+2016-08-19  Pedro Alves  <palves@redhat.com>
+
+       * linux-amd64-ipa.c (alloc_jump_pad_buffer) [__ILP32__]: Try
+       allocating around 0x80000000.
+
+2016-08-19  Pedro Alves  <palves@redhat.com>
+
+       PR gdb/20415
+       * Makefile.in (x32-linux-ipa.o, x32-avx-linux-ipa.o)
+       (x32-avx512-linux-ipa.o): New rules.
+       * configure.ac (x86_64-*-linux*): New x32 check.
+       * configure.srv (ipa_x32_linux_regobj): New.
+       (x86_64-*-linux*): Use $ipa_x32_linux_regobj if building for x32.
+       * linux-amd64-ipa.c (get_ipa_tdesc) [__ILP32__]: Return x32
+       descriptions.
+       (initialize_low_tracepoint) [__ILP32__]: Initialize x32
+       descriptions.
+       * configure: Regenerate.
+
+2016-08-09  Pedro Alves  <palves@redhat.com>
+
+       PR gdb/18653
+       * Makefile.in (OBS): Add signals-state-save-restore.o.
+       (signals-state-save-restore.o): New rule.
+       * config.in: Regenerate.
+       * configure: Regenerate.
+       * linux-low.c: Include "signals-state-save-restore.h".
+       (linux_create_inferior): Call
+       restore_original_signals_state.
+       * server.c: Include "dispositions-save-restore.h".
+       (captured_main): Call save_original_signals_state.
+
+2016-08-05  Pedro Alves  <palves@redhat.com>
+
+       * configure: Regenerate.
+
+2016-08-04  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (regsets_fetch_inferior_registers): Check
+       errno is ESRCH or not.
+
+2016-08-02  Yao Qi  <yao.qi@linaro.org>
+
+       * thread-db.c (struct thread_db) <td_ta_event_getmsg_p>: Remove.
+       <td_ta_set_event_p, td_ta_event_addr_p>: Remove.
+       (thread_db_load_search): Update.
+       (try_thread_db_load_1): Don't look for td_ta_event_addr,
+       td_ta_set_event and td_ta_event_getmsg.
+
+2016-07-26  Pedro Alves  <palves@redhat.com>
+
+       PR server/20414
+       * linux-x86-low.c (x86_get_pc, x86_set_pc): Use uint64_t instead
+       of unsigned long for 64-bit registers and use uint32_t instead of
+       unsigned int for 32-bit registers.
+
+2016-07-26  Pedro Alves  <palves@redhat.com>
+
+       * linux-x86-low.c (x86_siginfo_fixup): Rename 'native' parameter
+       to 'ptrace'.
+
+2016-07-21  Tom Tromey  <tom@tromey.com>
+
+       * configure: Rebuild.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * mem-break.c (find_gdb_breakpoint): Cast bp to
+       'struct gdb_breakpoint *' rather than 'gdb_breakpoint *'.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * server.c (handle_v_requests): Support s and S actions
+       if target_supports_software_single_step return true.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (resume_stopped_resumed_lwps): If resume request
+       is resume_step, call maybe_hw_step.
+       (linux_wait_1): Stop all threads, remove reinsert breakpoints,
+       and unstop them.
+       (linux_resume_one_lwp_throw): Don't assert the thread has reinsert
+       breakpoints or not.
+       (proceed_one_lwp): If resume request is resume_step, install
+       reinsert breakpoints and call maybe_hw_step.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (proceed_one_lwp): Declare.
+       (linux_resume_one_thread): Remove local variable 'step'.
+       Lift code enqueue signal.  Call proceed_one_lwp instead of
+       linux_resume_one_lwp.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (linux_resume_one_thread): Call
+       enqueue_pending_signal.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * gdbthread.h (make_cleanup_restore_current_thread): Declare.
+       * inferiors.c (do_restore_current_thread_cleanup): New function.
+       (make_cleanup_restore_current_thread): Likewise.
+       * linux-low.c (install_software_single_step_breakpoints): Call
+       make_cleanup_restore_current_thread.  Switch current_thread to
+       thread.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * mem-break.c (struct reinsert_breakpoint) <ptid>: New field.
+       (set_reinsert_breakpoint): New parameter ptid.  Callers updated.
+       (clone_one_breakpoint): Likewise.
+       (delete_reinsert_breakpoints): Change parameter to thread.
+       Callers updated.
+       (has_reinsert_breakpoints): Likewise.
+       (uninsert_reinsert_breakpoints): Likewise.
+       (reinsert_reinsert_breakpoints): Likewise.
+       * mem-break.h (set_reinsert_breakpoint): Update declaration.
+       (delete_reinsert_breakpoints): Likewise.
+       (reinsert_reinsert_breakpoints): Likewise.
+       (uninsert_reinsert_breakpoints): Likewise.
+       (has_reinsert_breakpoints): Likewise.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * inferiors.c (get_thread_process): Make parameter const.
+       * inferiors.h (get_thread_process): Update declaration.
+       * mem-break.c (clone_all_breakpoints): Remove all parameters.
+       Add new parameters child_thread and parent_thread.  Callers
+       updated.
+       * mem-break.h (clone_all_breakpoints): Update declaration.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * mem-break.c (struct breakpoint) <cond_list>: Remove.
+       <command_list, handler>: Remove.
+       (struct gdb_breakpoint): New.
+       (struct other_breakpoint): New.
+       (struct reinsert_breakpoint): New.
+       (is_gdb_breakpoint): New function.
+       (any_persistent_commands): Update command_list if
+       is_gdb_breakpoint returns true.
+       (set_breakpoint): Create breakpoints according to their types.
+       (find_gdb_breakpoint): Return 'struct gdb_breakpoint *'.
+       (set_gdb_breakpoint_1): Likewise.
+       (set_gdb_breakpoint): Likewise.
+       (clear_breakpoint_conditions): Change parameter type to
+       'struct gdb_breakpoint *'.
+       (clear_breakpoint_commands): Likewise.
+       (clear_breakpoint_conditions_and_commands): Likewise.
+       (add_condition_to_breakpoint): Likewise.
+       (add_breakpoint_condition): Likewise.
+       (add_commands_to_breakpoint): Likewise.
+       (check_breakpoints): Check other_breakpoint.
+       (clone_one_breakpoint): Clone breakpopint according to its type.
+       * mem-break.h (struct gdb_breakpoint): Declare.
+       (set_gdb_breakpoint): Update declaration.
+       (clear_breakpoint_conditions_and_commands): Likewise.
+       (add_breakpoint_condition): Likewise.
+       (add_breakpoint_commands): Likewise.
+       * server.c (process_point_options): Change parameter type to
+       'struct gdb_breakpoint *'.
+
+2016-07-21  Yao Qi  <yao.qi@linaro.org>
+
+       * mem-break.c (set_breakpoint_at): Rename it to ...
+       (set_breakpoint_type_at): ... it.
+       (set_breakpoint_at): Call set_breakpoint_type_at.
+       (set_reinsert_breakpoint): Call set_breakpoint_type_at.
+       * mem-break.h (set_breakpoint_at): Update comments.
+
+2016-07-12  Chung-Lin Tang  <cltang@codesourcery.com>
+
+       * linux-nios2-low.c (nios2_fill_gregset): Add type cast
+       to buf parameter.
+       (nios2_store_gregset): Likewise.
+
+2016-07-01  Pedro Alves  <palves@redhat.com>
+           Antoine Tremblay  <antoine.tremblay@ericsson.com>
+
+       * linux-low.c: Change interface to take the target lwp_info
+       pointer directly and return void.  Handle detaching from a zombie
+       thread.
+       (linux_detach_lwp_callback): New function.
+       (linux_detach): Detach from the leader thread after detaching from
+       the clone threads.
+
+2016-06-28  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-aarch64-low.c (aarch64_ftrace_insn_reloc_b): Use int64_t
+       for variable new_offset.
+       (aarch64_ftrace_insn_reloc_b_cond): Likewise.
+       (aarch64_ftrace_insn_reloc_cb): Likewise.
+       (aarch64_ftrace_insn_reloc_tb): Likewise.
+       (aarch64_install_fast_tracepoint_jump_pad): Likewise.  Use
+       PRIx64 instead of PRIx32.
+
+2016-06-28  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-arm-low.c (arm_get_syscall_trapinfo): New function.
+       (the_low_target): Install arm_get_syscall_trapinfo.
+
+2016-06-28  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-aarch64-low.c (aarch64_get_syscall_trapinfo): New
+       function.
+       (the_low_target): Install aarch64_get_syscall_trapinfo.
+
+2016-06-28  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (get_syscall_trapinfo): Remove parameter sysret.
+       Callers updated.
+       * linux-low.h (struct linux_target_ops) <get_syscall_trapinfo>:
+       Remove parameter sysno.
+       * linux-x86-low.c (x86_get_syscall_trapinfo): Remove parameter
+       sysret.
+
+2016-06-21  Andreas Arnez  <arnez@linux.vnet.ibm.com>
+
+       * linux-s390-low.c (s390_emit_eq_goto): Mark function static.
+       (s390_emit_ne_goto): Likewise.
+       (s390_emit_lt_goto): Likewise.
+       (s390_emit_le_goto): Likewise.
+       (s390_emit_gt_goto): Likewise.
+       (s390_emit_ge_goto): Likewise.
+       (s390x_emit_eq_goto): Likewise.
+       (s390x_emit_ne_goto): Likewise.
+       (s390x_emit_lt_goto): Likewise.
+       (s390x_emit_le_goto): Likewise.
+       (s390x_emit_gt_goto): Likewise.
+       (s390x_emit_ge_goto): Likewise.
+       (s390_emit_ops_impl): Mark variable static.
+       (s390x_emit_ops): Likewise.
+
+2016-06-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (handle_extended_wait): Call
+       uninsert_reinsert_breakpoints for the parent process.  Remove
+       reinsert breakpoints from the child process.  Reinsert them to
+       the parent process when vfork is done.
+       * mem-break.c (uninsert_reinsert_breakpoints): New function.
+       (reinsert_reinsert_breakpoints): New function.
+       * mem-break.h (uninsert_reinsert_breakpoints): Declare
+       (reinsert_reinsert_breakpoints): Declare.
+
+2016-06-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (handle_extended_wait): If the parent is doing
+       step-over, remove the reinsert breakpoints from the forked child.
+
+2016-06-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (unsuspend_all_lwps): Declare.
+       (linux_low_filter_event): If thread exited, call finish_step_over.
+       If step-over is finished, unsuspend other threads.
+
+2016-06-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (linux_resume_one_lwp_throw): Assert
+       has_reinsert_breakpoints returns false.
+       * mem-break.c (delete_disabled_breakpoints): Assert
+       bp type isn't reinsert_breakpoint.
+
+2016-06-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (maybe_hw_step): New function.
+       (linux_resume_one_lwp_throw): Call maybe_hw_step.
+       (finish_step_over): Switch current_thread to lwp temporarily,
+       and assert has_reinsert_breakpoints returns true.
+       (proceed_one_lwp): Call maybe_hw_step.
+       * mem-break.c (has_reinsert_breakpoints): New function.
+       * mem-break.h (has_reinsert_breakpoints): Declare.
+
+2016-06-02  Jon Turney  <jon.turney@dronecode.org.uk>
+
+       * win32-low.c (win32_create_inferior): Add pointer casts for C++.
+
+2016-05-17  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (linux_stabilize_threads): Call unsuspend_all_lwps
+       instead of find_inferior.
+
+2016-05-05  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-arm-low.c (get_next_pcs_read_memory_unsigned_integer):
+       Initialize res to zero.
+
+2016-05-05  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-arm-low.c (arm_sigreturn_next_pc): Change type of cpsr
+       to uint32_t.
+
+2016-05-04  Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
+
+       * spu-low.c (fetch_ppc_register): Cast PowerPC-Linux-specific value
+       used as first ptrace argument to PTRACE_TYPE_ARG1 for C++.
+       (fetch_ppc_memory_1, store_ppc_memory_1): Likewise.
+
+2016-04-28  Par Olsson  <par.olsson@windriver.com>
+           Simon Marchi  <simon.marchi@ericsson.com>
+
+       * tracepoint.c (write_inferior_int8): New function.
+       (cmd_qtenable_disable): Write enable flag using
+       write_inferior_int8.
+
+2016-04-25  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (lwp_signal_can_be_delivered): Adjust.
+       (need_step_over_p): Return zero if the LWP has pending signals
+       can be delivered on software single step target.
+
+2016-04-25  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (reinsert_raw_breakpoint): If bp->inserted is true
+       return instead of error.
+
+2016-04-22  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-aarch32-low.c (arm_store_gregset): Clear CPSR bits 20
+       to 23.
+
+2016-04-22  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-low.c (lwp_signal_can_be_delivered): Don't deliver
+       signal when stepping over breakpoint with software single
+       step.
+
+2016-04-21  Pedro Alves  <palves@redhat.com>
+
+       * linux-s390-low.c (s390_collect_ptrace_register)
+       (s390_supply_ptrace_register, s390_get_hwcap): Use gdb_byte * and
+       add casts.
+       (s390_check_regset): Use void * instead of gdb_byte *.
+
+2016-04-20  Pedro Alves  <palves@redhat.com>
+
+       * configure: Renegerate.
+
+2016-04-20  Yao Qi  <yao.qi@linaro.org>
+
+       * linux-aarch32-low.c: Include "arch/arm-linux.h".
+       (arm_fill_gregset): Use ARM_CPSR_GREGNUM rather than magic
+       number 16.
+       (arm_store_gregset): Likewise.
+
+2016-04-16  Walfred Tedeschi  <walfred.tedeschi@intel.com>
+
+       * Makefile.in (clean): Add removal for i386-avx-mpx.c,
+       i386-avx-mpx-linux.c, amd64-avx-mpx.c and amd64-avx-mpx-linux.c.
+       (i386-avx-mpx.c, i386-avx-mpx-linux.c, amd64-avx-mpx.c)
+       (amd64-avx-mpx-linux.c): New rules.
+       (amd64-avx-mpx-linux-ipa.o, i386-avx-mpx-linux-ipa.o): New rule.
+       * configure.srv (srv_i386_regobj): Add i386-avx-mpx.o.
+       (srv_i386_linux_regobj): Add i386-avx-mpx-linux.o.
+       (srv_amd64_regobj): Add amd64-avx-mpx.o.
+       (srv_amd64_linux_regobj): Add amd64-avx-mpx-linux.o.
+       (srv_i386_xmlfiles): Add i386/i386-avx-mpx.xml.
+       (srv_amd64_xmlfiles): Add i386/amd64-avx-mpx.xml.
+       (srv_i386_linux_xmlfiles): Add i386/i386-avx-mpx-linux.xml.
+       (srv_amd64_linux_xmlfiles): Add i386/amd64-avx-mpx-linux.xml.
+       (ipa_i386_linux_regobj): Add i386-avx-mpx-linux-ipa.o.
+       (ipa_amd64_linux_regobj): Add amd64-avx-mpx-linux-ipa.o.
+       * linux-x86-low.c (x86_linux_read_description): Add case for
+       X86_XSTATE_AVX_MPX_MASK.
+       (x86_get_ipa_tdesc_idx): Add cases for avx_mpx.
+       (initialize_low_arch): Call init_registers_amd64_avx_mpx_linux and
+       init_registers_i386_avx_mpx_linux.
+       * linux-i386-ipa.c (get_ipa_tdesc): Add case for avx_mpx.
+       (initialize_low_tracepoint): Call
+       init_registers_i386_avx_mpx_linux.
+       * linux-amd64-ipa.c (get_ipa_tdesc):  Add case for avx_mpx.
+       (initialize_low_tracepoint): Call
+       init_registers_amd64_avx_mpx_linux.
+       * linux-x86-tdesc.h (X86_TDESC_AVX_MPX): New enum value.
+       (init_registers_amd64_avx_mpx_linux, tdesc_amd64_avx_mpx_linux)
+       (init_registers_i386_avx_mpx_linux, tdesc_i386_avx_mpx_linux): New
+       declarations.
+
+2016-04-18  Pedro Alves  <palves@redhat.com>
+
+       * configure: Regenerate.
+
+2016-04-13  Antoine Tremblay  <antoine.tremblay@ericsson.com>
+
+       * linux-aarch64-low.c (aarch64_emit_add): Switch x1 and x0.
+       (aarch64_emit_sub): Likewise.
+
+2016-04-12  Pedro Alves  <palves@redhat.com>
+
+       * utils.c (prepare_to_throw_exception): Delete.
+
+2016-04-05  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * Makefile.in ($(IPA_LIB)): Set SONAME of the IPA lib.
+
+2016-04-05  Marcin Kościelnicki  <koriakin@0x04.net>
+
+       * tracepoint.c (getauxval): Move to #ifdef IN_PROCESS_AGENT.
+
+2016-04-03  Marcin Kościelnicki  <koriakin@0x04.net>
+
+       * linux-aarch64-ipa.c: Add <elf.h> include.
+       * linux-ppc-ipa.c: Add <elf.h> include.
+       * linux-s390-ipa.c: Add <elf.h> include.
+
+2016-03-31  Marcin Kościelnicki  <koriakin@0x04.net>
+
+       * tracepoint.c (gdb_collect_ptr): Remove const qualifier.
+       (get_raw_reg_ptr): Likewise.
+       (get_trace_state_variable_value_ptr): Likewise.
+       (set_trace_state_variable_value_ptr): Likewise.
+       (initialize_tracepoint): Cast alloc_jump_pad_buffer result to
+       char *.
+
+2016-03-31  Wei-cheng Wang  <cole945@gmail.com>
+           Marcin Kościelnicki  <koriakin@0x04.net>
+
+       PR/17221
+       * linux-ppc-low.c (emit_insns): New function.
+       (__EMIT_ASM, _EMIT_ASM, EMIT_ASM): New macros.
+       (ppc_emit_prologue): New function.
+       (ppc_emit_epilogue): New function.
+       (ppc_emit_add): New function.
+       (ppc_emit_sub): New function.
+       (ppc_emit_mul): New function.
+       (ppc_emit_lsh): New function.
+       (ppc_emit_rsh_signed): New function.
+       (ppc_emit_rsh_unsigned): New function.
+       (ppc_emit_ext): New function.
+       (ppc_emit_zero_ext): New function.
+       (ppc_emit_log_not): New function.
+       (ppc_emit_bit_and): New function.
+       (ppc_emit_bit_or): New function.
+       (ppc_emit_bit_xor): New function.
+       (ppc_emit_bit_not): New function.
+       (ppc_emit_equal): New function.
+       (ppc_emit_less_signed): New function.
+       (ppc_emit_less_unsigned): New function.
+       (ppc_emit_ref): New function.
+       (ppc_emit_const): New function.
+       (ppc_emit_reg): New function.
+       (ppc_emit_pop): New function.
+       (ppc_emit_stack_flush): New function.
+       (ppc_emit_swap): New function.
+       (ppc_emit_stack_adjust): New function.
+       (ppc_emit_call): New function.
+       (ppc_emit_int_call_1): New function.
+       (ppc_emit_void_call_2): New function.
+       (ppc_emit_if_goto): New function.
+       (ppc_emit_goto): New function.
+       (ppc_emit_eq_goto): New function.
+       (ppc_emit_ne_goto): New function.
+       (ppc_emit_lt_goto): New function.
+       (ppc_emit_le_goto): New function.
+       (ppc_emit_gt_goto): New function.
+       (ppc_emit_ge_goto): New function.
+       (ppc_write_goto_address): New function.
+       (ppc_emit_ops_impl): New static variable.
+       (ppc64v1_emit_prologue): New function.
+       (ppc64v2_emit_prologue): New function.
+       (ppc64_emit_epilogue): New function.
+       (ppc64_emit_add): New function.
+       (ppc64_emit_sub): New function.
+       (ppc64_emit_mul): New function.
+       (ppc64_emit_lsh): New function.
+       (ppc64_emit_rsh_signed): New function.
+       (ppc64_emit_rsh_unsigned): New function.
+       (ppc64_emit_ext): New function.
+       (ppc64_emit_zero_ext): New function.
+       (ppc64_emit_log_not): New function.
+       (ppc64_emit_bit_and): New function.
+       (ppc64_emit_bit_or): New function.
+       (ppc64_emit_bit_xor): New function.
+       (ppc64_emit_bit_not): New function.
+       (ppc64_emit_equal): New function.
+       (ppc64_emit_less_signed): New function.
+       (ppc64_emit_less_unsigned): New function.
+       (ppc64_emit_ref): New function.
+       (ppc64_emit_const): New function.
+       (ppc64v1_emit_reg): New function.
+       (ppc64v2_emit_reg): New function.
+       (ppc64_emit_pop): New function.
+       (ppc64_emit_stack_flush): New function.
+       (ppc64_emit_swap): New function.
+       (ppc64v1_emit_call): New function.
+       (ppc64v2_emit_call): New function.
+       (ppc64v1_emit_int_call_1): New function.
+       (ppc64v2_emit_int_call_1): New function.
+       (ppc64v1_emit_void_call_2): New function.
+       (ppc64v2_emit_void_call_2): New function.
+       (ppc64_emit_if_goto): New function.
+       (ppc64_emit_eq_goto): New function.
+       (ppc64_emit_ne_goto): New function.
+       (ppc64_emit_lt_goto): New function.
+       (ppc64_emit_le_goto): New function.
+       (ppc64_emit_gt_goto): New function.
+       (ppc64_emit_ge_goto): New function.
+       (ppc64v1_emit_ops_impl): New static variable.
+       (ppc64v2_emit_ops_impl): New static variable.
+       (ppc_emit_ops): New function.
+       (linux_low_target): Wire in ppc_emit_ops.
+
+2016-03-31  Wei-cheng Wang  <cole945@gmail.com>
+           Marcin Kościelnicki  <koriakin@0x04.net>
+
+       PR/17221
+       * Makefile.in: Add powerpc-*-ipa.o
+       * configure.srv: Add ipa_obj for powerpc*-linux.
+       * linux-ppc-ipa.c: New file.
+       * linux-ppc-low.c: Added linux-ppc-tdesc.h, ax.h, tracepoint.h
+       includes.
+       (PPC_FIELD): New macro.
+       (PPC_SEXT): New macro.
+       (PPC_OP6): New macro.
+       (PPC_BO): New macro.
+       (PPC_LI): New macro.
+       (PPC_BD): New macro.
+       (init_registers_*): Move prototype to linux-ppc-tdesc.h.
+       (tdesc_*): Move declaration to linux-ppc-tdesc.h.
+       (ppc_get_hwcap): Rename to ppc_get_auxv and add type parameter.
+       (ppc_get_thread_area): New function.
+       (is_elfv2_inferior): New function.
+       (gen_ds_form): New function.
+       (GEN_STD): New macro.
+       (GEN_STDU): New macro.
+       (GEN_LD): New macro.
+       (GEN_LDU): New macro.
+       (gen_d_form): New function.
+       (GEN_ADDI): New macro.
+       (GEN_ADDIS): New macro.
+       (GEN_LI): New macro.
+       (GEN_LIS): New macro.
+       (GEN_ORI): New macro.
+       (GEN_ORIS): New macro.
+       (GEN_LWZ): New macro.
+       (GEN_STW): New macro.
+       (GEN_STWU): New macro.
+       (gen_xfx_form): New function.
+       (GEN_MFSPR): New macro.
+       (GEN_MTSPR): New macro.
+       (GEN_MFCR): New macro.
+       (GEN_MTCR): New macro.
+       (GEN_SYNC): New macro.
+       (GEN_LWSYNC): New macro.
+       (gen_x_form): New function.
+       (GEN_OR): New macro.
+       (GEN_MR): New macro.
+       (GEN_LWARX): New macro.
+       (GEN_STWCX): New macro.
+       (GEN_CMPW): New macro.
+       (gen_md_form): New function.
+       (GEN_RLDICL): New macro.
+       (GEN_RLDICR): New macro.
+       (gen_i_form): New function.
+       (GEN_B): New macro.
+       (GEN_BL): New macro.
+       (gen_b_form): New function.
+       (GEN_BNE): New macro.
+       (GEN_LOAD): New macro.
+       (GEN_STORE): New macro.
+       (gen_limm): New function.
+       (gen_atomic_xchg): New function.
+       (gen_call): New function.
+       (ppc_relocate_instruction): New function.
+       (ppc_install_fast_tracepoint_jump_pad): New function.
+       (ppc_get_min_fast_tracepoint_insn_len): New function.
+       (ppc_get_ipa_tdesc_idx): New function.
+       (the_low_target): Wire in the new functions.
+       (initialize_low_arch) [!__powerpc64__]: Don'it initialize 64-bit
+       tdescs.
+       * linux-ppc-tdesc.h: New file.
+
+2016-03-31  Marcin Kościelnicki  <koriakin@0x04.net>
+
+       * linux-aarch64-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
+       (alloc_jump_pad_buffer): New function.
+       * linux-amd64-ipa.c: Add <sys/mman.h> include.
+       (alloc_jump_pad_buffer): New function.
+       * linux-i386-ipa.c (alloc_jump_pad_buffer): New function.
+       * linux-s390-ipa.c: Add <sys/mman.h> and <sys/auxv.h> includes.
+       (alloc_jump_pad_buffer): New function.
+       * tracepoint.c (getauxval) [!HAVE_GETAUXVAL]: New function.
+       (initialize_tracepoint): Delegate to alloc_jump_pad_buffer.
+       * tracepoint.h (alloc_jump_pad_buffer): New prototype.
+       (getauxval) [!HAVE_GETAUXVAL]: New prototype.
+
 2016-03-30  Marcin Kościelnicki  <koriakin@0x04.net>
 
        * linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
This page took 0.043345 seconds and 4 git commands to generate.