+2016-11-04 Simon Marchi <simon.marchi@polymtl.ca>
+
+ * maint.c (scoped_command_stats::scoped_command_stats): Fix typo.
+ * ppcnbsd-tdep.c (_initialize_ppcnbsd_tdep): Likewise.
+ * ppcobsd-tdep.c (_initialize_ppcobsd_tdep): Likewise.
+ * ui-out.c (ui_out_new): Likewise.
+ * utils.c (init_page_info): Likewise.
+ (reset_prompt_for_continue_wait_time): Likewise.
+ * windows-nat.c (windows_init_thread_list): Likewise.
+ * xtensa-tdep.c (call0_analyze_prologue): Likewise.
+
+2016-10-29 Manish Goregaokar <manish@mozilla.com>
+
+ * rust-exp.y: Parse `sizeof(exp)` as `UNOP_SIZEOF`
+
+2016-10-28 Manish Goregaokar <manish@mozilla.com>
+
+ * rust-lang.c (rust_union_is_untagged): Add function to
+ check if a union is an untagged unioni
+ (rust_val_print): Handle printing of untagged union values
+ (rust_print_type): Handle printing of untagged union types
+ (rust_evaluate_subexp): Handle evaluating field
+ access on untagged unions
+
+2016-10-27 Manish Goregaokar <manish@mozilla.com>
+
+ * rust-lang.c (rust_get_disr_info): Treat univariant enums
+ without discriminants as encoded enums with a real field
+ * rust-lang.c (rust_evaluate_subexp): Handle field access
+ on encoded struct-like enums
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * Makefile.in (.y.c): Replace YY_NULL with YY_NULLPTR.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+ Pedro Alves <palves@redhat.com>
+
+ * aarch64-tdep.c (aarch64_default_breakpoint): Change it to
+ constexpr. Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (aarch64_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * alpha-tdep.c (break_insn): Rename to alpha_break_insn.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (alpha_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * arc-tdep.c (arc_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * arch-utils.h (GDBARCH_BREAKPOINT_MANIPULATION): Remove.
+ (struct bp_manipulation): New.
+ (SET_GDBARCH_BREAKPOINT_MANIPULATION): Remove.
+ (struct bp_manipulation_endian): New.
+ (BP_MANIPULATION): New.
+ (BP_MANIPULATION_ENDIAN): New.
+ * arm-tdep.c (arm_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * avr-tdep.c (avr_break_insn): Change it constexpr.
+ (avr_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * bfin-tdep.c (bfin_gdbarch_init): Likewise.
+ * cris-tdep.c (cris_gdbarch_init): Likewise.
+ * frv-tdep.c (breakpoint): Rename it to frv_break_insn, and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (frv_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * ft32-tdep.c (breakpoint): Rename it to ft32_break_insn and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (ft32_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * h8300-tdep.c (breakpoint): Rename it to h8300_break_insn.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (h8300_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * hppa-tdep.c (breakpoint): Rename it to h8300_break_insn.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (hppa_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * i386-tdep.c (break_insn): Rename it to i386_break_insn.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (i386_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * iq2000-tdep.c (iq2000_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * lm32-tdep.c (breakpoint): Rename it to lm32_break_insn and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (lm32_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * m32c-tdep.c (break_insn): Rename it to m32c_break_insn and change
+ its type to constexpr. Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (m32c_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * m32r-tdep.c (m32r_gdbarch_init): Likewise.
+ * m68hc11-tdep.c (breakpoint): Rename it to m68hc11_break_insn and
+ change its type to constexpr.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (m68hc11_gdbarch_init): Don't use SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * m68k-tdep.c (break_insn): Rename it to m68k_break_insn and change
+ its type to constexpr. Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (m68k_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * m88k-tdep.c (break_insn): Rename it to m88k_break_insn and change
+ its type to constexpr. Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (m88k_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * mep-tdep.c (breakpoint): Rename it to mep_break_insn and change
+ its type to constexpr. Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (mep_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * microblaze-tdep.c (break_insn): Rename it to
+ microblaze_break_insn and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (microblaze_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * mips-tdep.c (mips_gdbarch_init): Likewise.
+ * mn10300-tdep.c (breakpoint): Rename it to mn10300_break_insn and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (mn10300_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * moxie-tdep.c (breakpoint): Rename it to moxie_break_insn and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (moxie_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * msp430-tdep.c (breakpoint): Rename it to msp430_break_insn
+ and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (msp430_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * mt-tdep.c (mt_gdbarch_init): Likewise.
+ * nds32-tdep.c (break_insn): Rename it to nds32_break_insn
+ and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (nds32_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * nios2-tdep.c (nios2_gdbarch_init): Likewise.
+ * rl78-tdep.c (breakpoint): Rename it to rl78_break_ins
+ and change its type to rl78_break_insn. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (rl78_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * rs6000-tdep.c (big_breakpoint): Change its type to
+ constexpr.
+ (little_breakpoint): Likewise.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION_ENDIAN.
+ (rs6000_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * rx-tdep.c (breakpoint): Rename it to rx_break_insn and
+ change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (rx_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * s390-linux-tdep.c (breakpoint): Rename it to s390_break_insn
+ and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION
+ (s390_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * score-tdep.c (score_gdbarch_init): Likewise.
+ * sh-tdep.c (sh_gdbarch_init): Likewise.
+ * sh64-tdep.c (sh64_gdbarch_init): Likewise.
+ * sparc-tdep.c (break_insn): Rename it to sparc_break_insn
+ and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (sparc32_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * spu-tdep.c (breakpoint): Rename it to spu_break_insn and change
+ its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (spu_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * tic6x-tdep.c (tic6x_gdbarch_init): Likewise.
+ * tilegx-tdep.c (breakpoint): Rename it to tilegx_break_insn
+ and change its type to constexpr. Don't use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (tilegx_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * v850-tdep.c (v850_gdbarch_init): Likewise.
+ * vax-tdep.c (break_insn): Rename it to vax_break_insn and
+ change its type to constexpr.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (vax_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * xstormy16-tdep.c (breakpoint): Rename it to
+ xstormy16_break_insn and change its type to constexpr.
+ Don't use GDBARCH_BREAKPOINT_MANIPULATION.
+ (xstormy16_gdbarch_init): Don't use
+ SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * xtensa-tdep.c (xtensa_gdbarch_init): Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arm-tdep.c (arm_override_mode): Remove.
+ (arm_pc_is_thumb): Update.
+ (arm_insert_single_step_breakpoint): Update.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.c (default_breakpoint_kind_from_current_state):
+ New function.
+ * arch-utils.h (default_breakpoint_kind_from_current_state):
+ Declare.
+ * arm-tdep.c (arm_breakpoint_kind_from_current_state): New
+ function.
+ (arm_gdbarch_init): Call
+ set_gdbarch_breakpoint_kind_from_current_state.
+ * breakpoint.c (breakpoint_kind): Call
+ gdbarch_breakpoint_kind_from_current_state for single step
+ breakpoint. Update comments.
+ * gdbarch.sh (breakpoint_kind_from_current_state): New.
+ * gdbarch.c, gdbarch.h: Regenerate.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.c (default_breakpoint_from_pc): New function.
+ * arch-utils.h (GDBARCH_BREAKPOINT_FROM_PC): Remove.
+ (GDBARCH_BREAKPOINT_MANIPULATION): Don't use
+ GDBARCH_BREAKPOINT_FROM_PC.
+ (SET_GDBARCH_BREAKPOINT_MANIPULATION): Don't call
+ set_gdbarch_breakpoint_from_pc.
+ (default_breakpoint_from_pc): Remove declaration.
+ * gdbarch.sh (breakpoint_from_pc): Add its default implementation.
+ * gdbarch.c, gdbarch.h: Regenerate.
+ * arm-tdep.c: Don't use GDBARCH_BREAKPOINT_FROM_PC.
+ * arc-tdep.c, bfin-tdep.c, cris-tdep.c, iq2000-tdep.c: Likewise.
+ * m32r-tdep.c, mips-tdep.c, mt-tdep.c: Likewise.
+ * nios2-tdep.c, score-tdep.c, sh-tdep.c: Likewise.
+ * sh64-tdep.c, tic6x-tdep.c, v850-tdep.c, xtensa-tdep.c: Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.c (default_remote_breakpoint_from_pc): Remove.
+ * arch-utils.h (default_remote_breakpoint_from_pc): Remove.
+ * arm-tdep.c (arm_remote_breakpoint_from_pc): Remove.
+ (arm_gdbarch_init): Don't call
+ set_gdbarch_remote_breakpoint_from_pc.
+ * gdbarch.sh (remote_breakpoint_from_pc): Remove.
+ * gdbarch.c, gdbarch.h: Regenerate.
+ * mips-tdep.c (mips_remote_breakpoint_from_pc): Remove.
+ (mips_gdbarch_init): Don't call
+ set_gdbarch_remote_breakpoint_from_pc.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * breakpoint.h (struct bp_target_info) <placed_size>: Remove.
+ <kind>: New field.
+ Update all users.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.h (GDBARCH_BREAKPOINT_MANIPULATION): Define
+ breakpoint_kind_from_pc and sw_breakpoint_from_kind.
+ (GDBARCH_BREAKPOINT_MANIPULATION_ENDIAN): Likewise.
+ (SET_GDBARCH_BREAKPOINT_MANIPULATION): Call
+ set_gdbarch_breakpoint_kind_from_pc and
+ set_gdbarch_sw_breakpoint_from_kind.
+ * arm-tdep.c: Add comments.
+ * bfin-tdep.c: Likewise.
+ * breakpoint.c (breakpoint_kind): New function.
+ (insert_bp_location): Set target_info.placed_size and
+ target_info.placed_address.
+ (bkpt_insert_location): Likewise.
+ * cris-tdep.c: Add comments.
+ * gdbarch.sh (breakpoint_kind_from_pc): New.
+ (sw_breakpoint_from_kind): New.
+ * gdbarch.c, gdbarch.h: Regenerated.
+ * ia64-tdep.c (ia64_memory_insert_breakpoint): Don't set
+ bp_tgt->placed_size.
+ (ia64_memory_remove_breakpoint): Don't assert
+ bp_tgt->placed_size.
+ (ia64_breakpoint_kind_from_pc): New function.
+ (ia64_gdbarch_init): Install ia64_breakpoint_kind_from_pc.
+ * m32r-tdep.c (m32r_memory_insert_breakpoint): Don't set
+ bp_tgt->placed_size.
+ * mem-break.c (default_memory_insert_breakpoint): Don't set
+ bp_tgt->placed_size. Call gdbarch_sw_breakpoint_from_kind.
+ (default_memory_remove_breakpoint): Call
+ gdbarch_sw_breakpoint_from_kind.
+ (memory_validate_breakpoint): Don't check bp_tgt->placed_size.
+ * mips-tdep.c: Add comments.
+ * mt-tdep.c: Likewise.
+ * nios2-tdep.c: Likewise.
+ * record-full.c (record_full_insert_breakpoint): Don't call
+ gdbarch_breakpoint_from_pc. Don't set bp_tgt->placed_address
+ and bp_tgt->placed_size.
+ * remote.c (remote_insert_breakpoint): Don't call
+ gdbarch_remote_breakpoint_from_pc. Use bp_tgt->placed_size.
+ Don't set bp_tgt->placed_address and bp_tgt->placed_size.
+ (remote_insert_hw_breakpoint): Likewise.
+ * score-tdep.c: Likewise.
+ * sh-tdep.c: Likewise.
+ * tic6x-tdep.c: Likewise.
+ * v850-tdep.c: Likewise.
+ * xtensa-tdep.c: Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.h (GDBARCH_BREAKPOINT_FROM_PC): New macro.
+ (GDBARCH_BREAKPOINT_MANIPULATION_ENDIAN): New macro.
+ * arm-tdep.c (arm_breakpoint_from_pc): Remove.
+ (arm_breakpoint_kind_from_pc): New function.
+ (arm_sw_breakpoint_from_kind): New function.
+ (arm_breakpoint_from_pc): Call arm_breakpoint_kind_from_pc
+ and arm_sw_breakpoint_from_kind.
+ Use GDBARCH_BREAKPOINT_FROM_PC.
+ (arm_remote_breakpoint_from_pc): Call
+ arm_breakpoint_kind_from_pc.
+ (arm_gdbarch_init): Replace set_gdbarch_breakpoint_from_pc
+ with SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * arc-tdep.c: Likewise.
+ * bfin-tdep.c: Likewise.
+ * cris-tdep.c: Likewise.
+ * iq2000-tdep.c: Likewise.
+ * m32r-tdep.c: Likewise.
+ * mips-tdep.c: Likewise.
+ * mt-tdep.c: Likewise.
+ * nios2-tdep.c: Likewise.
+ * rs6000-tdep.c: Likewise.
+ * score-tdep.c: Likewise.
+ * sh-tdep.c: Likewise.
+ * sh64-tdep.c: Likewise.
+ * tic6x-tdep.c: Likewise.
+ * v850-tdep.c: Likewise.
+ * xtensa-tdep.c: Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * mips-tdep.c (mips_breakpoint_kind): New enum.
+ (mips_breakpoint_from_pc): Use it.
+ (mips_remote_breakpoint_from_pc): Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * arch-utils.h (GDBARCH_BREAKPOINT_MANIPULATION): New macro.
+ (SET_GDBARCH_BREAKPOINT_MANIPULATION): New macro.
+ aarch64-tdep.c (aarch64_breakpoint_from_pc): Remove. Use
+ GDBARCH_BREAKPOINT_MANIPULATION.
+ (aarch64_gdbarch_init): Replace set_gdbarch_breakpoint_from_pc
+ with SET_GDBARCH_BREAKPOINT_MANIPULATION.
+ * alpha-tdep.c: Likewise.
+ * avr-tdep.c: Likewise.
+ * frv-tdep.c: Likewise.
+ * ft32-tdep.c: Likewise.
+ * h8300-tdep.c: Likewise.
+ * hppa-tdep.c: Likewise.
+ * i386-tdep.c: Likewise.
+ * lm32-tdep.c: Likewise.
+ * m32c-tdep.c: Likewise.
+ * m68hc11-tdep.c: Likewise.
+ * m68k-tdep.c: Likewise.
+ * m88k-tdep.c: Likewise.
+ * mep-tdep.c: Likewise.
+ * microblaze-tdep.c: Likewise.
+ * mn10300-tdep.c: Likewise.
+ * moxie-tdep.c: Likewise.
+ * msp430-tdep.c: Likewise.
+ * rl78-tdep.c: Likewise.
+ * rx-tdep.c: Likewise.
+ * s390-linux-tdep.c: Likewise.
+ * sparc-tdep.c: Likewise.
+ * spu-tdep.c: Likewise.
+ * tilegx-tdep.c: Likewise.
+ * vax-tdep.c: Likewise.
+ * xstormy16-tdep.c: Likewise.
+
+2016-11-03 Yao Qi <yao.qi@linaro.org>
+
+ * mem-break.c (default_memory_insert_breakpoint): Don't check
+ 'bp' against NULL.
+ * microblaze-linux-tdep.c (microblaze_linux_memory_remove_breakpoint):
+ Likewise.
+ * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Likewise.
+
+2016-11-02 Tom Tromey <tom@tromey.com>
+
+ * dwarf2loc.c (dwarf_evaluate_loc_desc::get_base_type): Rename
+ from impl_get_base_type. Rewrite.
+ (struct dwarf_expr_baton): Remove.
+ (dwarf_evaluate_loc_desc::push_dwarf_reg_entry_value): Save and
+ restore more fields.
+ (symbol_needs_eval_context::get_frame_pc): New method.
+ * dwarf2expr.h (dwarf_expr_context::get_base_type): Now public,
+ virtual.
+ (dwarf_expr_context::impl_get_base_type): Remove.
+ * dwarf2expr.c (dwarf_expr_context::get_base_type): Remove.
+
+2016-10-31 Maciej W. Rozycki <macro@imgtec.com>
+
+ * configure.ac <mips-sgi-irix5*>: Remove <sys/proc.h> _KMEMUSER
+ workaround.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+
2016-10-31 Maciej W. Rozycki <macro@imgtec.com>
* mips-tdep.c (mips_r3041_reg_names): Remove.