From patchwork Fri Nov 30 17:03:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Qing Zhao X-Patchwork-Id: 1006088 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-491386-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=oracle.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="Dau0Ptxc"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 43612M3fvFz9sBQ for ; Sat, 1 Dec 2018 04:04:09 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :message-id:mime-version:subject:date:in-reply-to:cc:to :references:content-type:content-transfer-encoding; q=dns; s= default; b=J6Iy26uQjxnPATaIG+JwZlIl6039mDbldODT42uGNGUiyck4jG/kX f8DLRVcHTnHOWKam9QovWn8nzoneFKN3PPciW8Y0otj+z+ztJBzkSmm8zr8+xx1L dSYBo8cYFjDHsc4UWzfpAVMTDiUSyDqILocKg5Ccv5gBMQ+XAvKbbQ= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :message-id:mime-version:subject:date:in-reply-to:cc:to :references:content-type:content-transfer-encoding; s=default; bh=xn7OnSw/OJmy9opH9nCc/GtfYuo=; b=Dau0Ptxcsmiv2kQox2SOtbYmEA8H Z+2p5t6uskgld1ehxs8b3pt3bDun4khZIt9KwXw1m6GZyAQnq6URSjRtzHToDGp9 eqOAv94eUWNsEukEpYw2GK7u+Ugp6by/mW4Ans8zg50D96cGH6dKOrgEUy9SnUwy P1nZe53ec+GAV0g= Received: (qmail 61670 invoked by alias); 30 Nov 2018 17:04:03 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 61584 invoked by uid 89); 30 Nov 2018 17:04:00 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-8.7 required=5.0 tests=BAYES_50, GIT_PATCH_2, GIT_PATCH_3, HTML_MESSAGE, KAM_NUMSUBJECT, KAM_SHORT, SPF_HELO_PASS, UNPARSEABLE_RELAY autolearn=ham version=3.3.2 spammy=common.opt, finish_options, UD:changes.html, flivepatching X-HELO: userp2130.oracle.com Received: from userp2130.oracle.com (HELO userp2130.oracle.com) (156.151.31.86) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 30 Nov 2018 17:03:58 +0000 Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.22/8.16.0.22) with SMTP id wAUGx2iq146457; Fri, 30 Nov 2018 17:03:55 GMT Received: from userv0021.oracle.com (userv0021.oracle.com [156.151.31.71]) by userp2130.oracle.com with ESMTP id 2p2jf0pp12-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 30 Nov 2018 17:03:55 +0000 Received: from aserv0121.oracle.com (aserv0121.oracle.com [141.146.126.235]) by userv0021.oracle.com (8.14.4/8.14.4) with ESMTP id wAUH3sx8021533 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 30 Nov 2018 17:03:55 GMT Received: from abhmp0009.oracle.com (abhmp0009.oracle.com [141.146.116.15]) by aserv0121.oracle.com (8.14.4/8.13.8) with ESMTP id wAUH3sCL012480; Fri, 30 Nov 2018 17:03:54 GMT Received: from dhcp-10-159-128-163.vpn.oracle.com (/10.159.128.163) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Fri, 30 Nov 2018 09:03:53 -0800 From: Qing Zhao Message-Id: Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: [wwwdocs] [PATCH]introduce new -flive-patching master option into gcc9 Date: Fri, 30 Nov 2018 11:03:53 -0600 In-Reply-To: <1F0B9FED-7789-40FC-A8EE-64F71F5B9129@oracle.com> Cc: Jan Hubicka , gerald@pfeifer.com To: gcc Patches References: <1a023bdc-28a6-eb41-b449-4d096f12064f@suse.cz> <20181108145909.5eh5ccen7a7elspe@kam.mff.cuni.cz> <173116c6-d51c-3bef-5382-38593e032f82@suse.cz> <8f467934-c088-9b60-c4d3-c19c2e03defd@suse.cz> <2F74DD05-E807-4FB4-80B1-3BBC6FEDF6E8@oracle.com> <7FA7E4B3-BF39-4E60-84AD-91161CC4867F@oracle.com> <8F7AEFF2-5DCE-49B6-BC9E-34FC0DEF2A55@oracle.com> <568496ae-! 24cf-7453-57db-a2188d5d11c2@suse.cz> <49B97110-C7FD-4569-AE26-1B37951D802B@oracle.com> <30e99713-0a96-3acb-ea5f-8f0996be69a6@suse.cz> <5A3304F6-2084-44BA-86CB-88A657AAF741@oracle.com> <25de1f37-40b1-1834-78cc-13f89215906d@suse.cz> <06EEEEBB-40EC-47DE-BB30-22784E3E28AF@oracle.com> <1F0B9FED-7789-40FC-A8EE-64F71F5B9129@oracle.com> X-IsSubscribed: yes Hi, This is the patch for update https://gcc.gnu.org/gcc-9/changes.html to include the introducing of new option -flive-patching into gcc9. Okay for commit? thanks. Qing On Nov 20, 2018, at 9:32 AM, Qing Zhao wrote: >> >> >> Qing. >> >> =========== >> gcc/ChangeLog: >> >> 2018-11-20 qing zhao >> >> * cif-code.def (EXTERN_LIVE_ONLY_STATIC): New CIF code. >> * common.opt: Add -flive-patching flag. >> * doc/invoke.texi: Document -flive-patching. >> * flag-types.h (enum live_patching_level): New enum. >> * ipa-inline.c (can_inline_edge_p): Disable external functions from >> inlining when flag_live_patching is LIVE_PATCHING_INLINE_ONLY_STATIC. >> * opts.c (control_options_for_live_patching): New function. >> (finish_options): Make flag_live_patching incompatible with flag_lto. >> Control IPA optimizations based on different levels of >> flag_live_patching. >> >> gcc/testsuite/ChangeLog: >> >> 2018-11-20 qing zhao >> >> * gcc.dg/live-patching-1.c: New test. >> * gcc.dg/live-patching-2.c: New test. >> * gcc.dg/live-patching-3.c: New test. >> * gcc.dg/tree-ssa/writeonly-3.c: New test. >> * gcc.target/i386/ipa-stack-alignment-2.c: New test. >> >> > ===== Index: gcc-9/changes.html =================================================================== RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-9/changes.html,v retrieving revision 1.28 diff -u -r1.28 changes.html --- gcc-9/changes.html 21 Nov 2018 20:07:26 -0000 1.28 +++ gcc-9/changes.html 30 Nov 2018 16:50:16 -0000 @@ -48,6 +48,15 @@

General Improvements

+
    +
  • + A new option -flive-patching=[inline-only-static|inline-clone] is + introduced to provide a safe compilation for live-patching. At the same + time, provides multiple-level control on the enabled IPA optimizations. + See the user guide for further information about the option for more + details. +
  • +

New Languages and Language specific improvements