From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 61286 invoked by alias); 18 Nov 2016 10:25:47 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 61267 invoked by uid 89); 18 Nov 2016 10:25:45 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.8 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy= X-Spam-User: qpsmtpd, 2 recipients X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 18 Nov 2016 10:25:34 +0000 Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 3BFB03B709; Fri, 18 Nov 2016 10:25:33 +0000 (UTC) Received: from [10.36.6.181] (vpn1-6-181.ams2.redhat.com [10.36.6.181]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id uAIAPUr5001297 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 18 Nov 2016 05:25:31 -0500 Subject: Re: [PATCH 1/2] Add support for setting disassembler-options in GDB for POWER, ARM and S390 To: Peter Bergner , gdb-patches@sourceware.org References: Cc: Ulrich Weigand , Pedro Alves , Alan Modra , binutils From: Nick Clifton Message-ID: Date: Fri, 18 Nov 2016 10:25:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-SW-Source: 2016-11/txt/msg00505.txt.bz2 Hi Peter, > include/ > * dis-asm.h (parse_arm_disassembler_option): Remove prototype. > (set_arm_regname_option): Likewise. > (disassemble_init_s390): New prototype. > (disassembler_options_names_powerpc): Likewise. > (disassembler_options_names_arm): Likewise. > (disassembler_options_desc_arm): Likewise. > (disassembler_options_names_s390): Likewise. > (disassembler_options_desc_s390): Likewise. > > opcodes/ > * disassemble.c (disassemble_init_for_target): Handle s390 init. > * ppc-dis.c: Include "libiberty.h". > (ppc_opts): Add "32" and "64" entries. > (parse_ppc_dis_option): New function. > (disassembler_options_names_powerpc): Likewise. > (powerpc_init_dialect): Use parse_ppc_dis_option(). > Add break to switch statement. > (print_ppc_disassembler_options): Remove printing of "32" and "64". > * arm-dis.c: Include "libiberty.h". > (struct arm_regname): Add 'long_name' field. > (regnames): Initialize it. > (set_arm_regname_option): Remove function. > (parse_arm_disassembler_option): Make static. > (disassembler_options_names_arm): New function. > (disassembler_options_desc_arm): Likewise. > * s390-dis.c: Include "libiberty.h". > (struct options_t): New structure type. > (options): New structure. > (init_disasm): Rename from this... > (disassemble_init_s390): ...to this. Add initializations for > current_arch_mask and option_use_insn_len_bits_p. Remove init_flag. > (disassembler_options_names_s390): New function. > (disassembler_options_desc_s390): Likewise. > (print_s390_disassembler_options): Print using information from > struct 'options'. > > gdb/ > * gdbarch.sh (gdbarch_disassembler_options): New variable. > (gdbarch_disassembler_options_names): Likewise. > (gdbarch_disassembler_options_descriptions): Likewise. > * gdbarch.c: Regenerate. > * gdbarch.h: Likewise. > * disasm.c: Include "arch-utils.h", "gdbcmd.h", "gdbcmd.h" and > "safe-ctype.h". > (gdb_disassemble_info): Initilize di.disassembler_options. > (gdb_buffered_insn_length_init_dis): Initilize di->application_data > and di->disassembler_options. > (cleanup_disassembler_options): New function. > (parse_disassembler_options): Likewise. > (set_disassembler_options): Likewise. > (show_disassembler_options): Likewise. > (disassembler_options_completer): Likewise. > (_initialize_disasm): Likewise. > * disasm.h (set_disassembler_options): New prototype. > (show_disassembler_options): Likewise. > * rs6000-tdep.c (rs6000_gdbarch_init): Call > set_gdbarch_disassembler_options_names. > * arm-tdep.c: Include "disasm.h" and "cli/cli-decode.h". > (disassembly_style): Delete static variable. > (set_disassembly_style): Delete function and prototype. > (show_disassembly_style_sfunc): New function. > (set_disassembly_style_sfunc): Call set_disassembler_options. > (arm_gdbarch_init): Call set_gdbarch_disassembler_options, > set_gdbarch_disassembler_options_names and > set_gdbarch_disassembler_options_descriptions. > (_initialize_arm_tdep): New static variable 'disassembly_style'; > Remove calls to parse_arm_disassembler_option & set_arm_regname_option. > Pass show_disassembly_style_sfunc to the "disassembler" setshow command. > * s390-tdep.c (s390_gdbarch_init): Call functions > set_gdbarch_disassembler_options_names and > set_gdbarch_disassembler_options_descriptions. The binutils parts are approved. Question: Is this worth a mention in the NEWS file ? (GDB presumably, although maybe binutils as well ?) Cheers Nick