From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ot1-x344.google.com (mail-ot1-x344.google.com [IPv6:2607:f8b0:4864:20::344]) by sourceware.org (Postfix) with ESMTPS id E27B53857024 for ; Sat, 7 Nov 2020 15:48:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org E27B53857024 Received: by mail-ot1-x344.google.com with SMTP id i18so4277113ots.0 for ; Sat, 07 Nov 2020 07:48:09 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=YH+enaJwEEdSALXtW6DzMnprRjPEtShxkAmDvdSZQzs=; b=Tx6ebwPC0QuPEUOEx4df6PC/WleXviyPMQ96VXod/4wfK52yPnsILG+zf0hFr9jCMc vUyyMr67GHc5K1iUi7FuSQ9JJggs1WPiMZ1FUFIBg5LBECekSd8cL/O87CtUI9J0rAMS ef/0uYS6n36vX6PgHWO4KM8lnRigA7znbZCRl3utyRmwxoDXPfXpfwoTNQHMySh8sGLY Ftt2dP4uVHyT2XzaM3smvTgWDQfuqWAiE6D92jQcUzmw6VwvpYspWK5NP5xr/TMQIgdg vdZPu6H35UauxPZb0QkzDbHK3jFFjcno0Kdme/I7F3r3ug678jkT9iO9WA03/erOjbis 02Zw== X-Gm-Message-State: AOAM531/gJDH0mbmjWpWR0aLmPaSODMSCNzn4AheD3J6SNHXamIbHiQ5 nqeiG7ix/BwsMpbJIDJZDSN2TqsZ3bDfMH8xi+Qc8j2B X-Google-Smtp-Source: ABdhPJxC/C7dYxraYQe0MTsI7wKc1YfxQYNKqjzgmcqU/iB8aNxD8ovLRKfYXsbSug1q4/Q6yBEP1vTbD9l/GpHS9JQ= X-Received: by 2002:a05:6830:4028:: with SMTP id i8mr4436601ots.90.1604764087713; Sat, 07 Nov 2020 07:48:07 -0800 (PST) MIME-Version: 1.0 References: <20200207025710.474289-1-hjl.tools@gmail.com> In-Reply-To: From: "H.J. Lu" Date: Sat, 7 Nov 2020 07:47:31 -0800 Message-ID: Subject: PING^4 [PATCH] Use the section flag 'o' for __patchable_function_entries To: GCC Patches , Jeffrey Law , Jakub Jelinek , Richard Biener , Richard Sandiford Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-3030.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, KAM_SHORT, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 07 Nov 2020 15:48:13 -0000 On Sat, Oct 31, 2020 at 5:01 AM H.J. Lu wrote: > > On Fri, Oct 23, 2020 at 5:41 AM H.J. Lu wrote: > > > > On Fri, Oct 2, 2020 at 6:00 AM H.J. Lu wrote: > > > > > > On Thu, Feb 6, 2020 at 6:57 PM H.J. Lu wrote: > > > > > > > > This commit in GNU binutils 2.35: > > > > > > > > https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=b7d072167715829eed0622616f6ae0182900de3e > > > > > > > > added the section flag 'o' to .section directive: > > > > > > > > .section __patchable_function_entries,"awo",@progbits,foo > > > > > > > > which specifies the symbol name which the section references. Assembler > > > > creates a unique __patchable_function_entries section with the section, > > > > where foo is defined, as its linked-to section. Linker keeps a section > > > > if its linked-to section is kept during garbage collection. > > > > > > > > This patch checks assembler support for the section flag 'o' and uses > > > > it to implement __patchable_function_entries section. Since Solaris may > > > > use GNU assembler with Solairs ld. Even if GNU assembler supports the > > > > section flag 'o', it doesn't mean that Solairs ld supports it. This > > > > feature is disabled for Solairs targets. > > > > > > > > gcc/ > > > > > > > > PR middle-end/93195 > > > > PR middle-end/93197 > > > > * configure.ac (HAVE_GAS_SECTION_LINK_ORDER): New. Define if > > > > the assembler supports the section flag 'o' for specifying > > > > section with link-order. > > > > * dwarf2out.c (output_comdat_type_unit): Pass 0 as flags2 > > > > to targetm.asm_out.named_section. > > > > * config/sol2.c (solaris_elf_asm_comdat_section): Likewise. > > > > * output.h (SECTION2_LINK_ORDER): New. > > > > (switch_to_section): Add an unsigned int argument. > > > > (default_no_named_section): Likewise. > > > > (default_elf_asm_named_section): Likewise. > > > > * target.def (asm_out.named_section): Likewise. > > > > * targhooks.c (default_print_patchable_function_entry): Pass > > > > current_function_decl to get_section and SECTION2_LINK_ORDER > > > > to switch_to_section. > > > > * varasm.c (default_no_named_section): Add an unsigned int > > > > argument. > > > > (default_elf_asm_named_section): Add an unsigned int argument, > > > > flags2. Use 'o' flag for SECTION2_LINK_ORDER if assembler > > > > supports it. > > > > (switch_to_section): Add an unsigned int argument and pass it > > > > to targetm.asm_out.named_section. > > > > (handle_vtv_comdat_section): Pass 0 to > > > > targetm.asm_out.named_section. > > > > * config.in: Regenerated. > > > > * configure: Likewise. > > > > * doc/tm.texi: Likewise. > > > > > > > > gcc/testsuite/ > > > > > > > > PR middle-end/93195 > > > > * g++.dg/pr93195a.C: New test. > > > > * g++.dg/pr93195b.C: Likewise. > > > > * lib/target-supports.exp > > > > (check_effective_target_o_flag_in_section): New proc. > > > > > > PING > > > > > > https://gcc.gnu.org/pipermail/gcc-patches/2020-February/539963.html > > > > PING. > > > > PING. > PING. -- H.J.