From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from sonic303-20.consmr.mail.ne1.yahoo.com (sonic303-20.consmr.mail.ne1.yahoo.com [66.163.188.146]) by sourceware.org (Postfix) with ESMTPS id 665ED3856DF9 for ; Tue, 24 May 2022 09:02:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 665ED3856DF9 X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1653382925; bh=xe5QOS4yitTtLozt8TW7PCifn+Ev138g8AvGg4v8bAc=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=ihRguYLpFj2Cl/EoPy9TSM1oUzENjI/LFXbqqn5MQv7OEOpIXYaUusTrrY9isaxERRHUDXZWv0jKFm+ifuc7BSanBJAdq8FHFJm0Aqv2hPrFIHCnHeSakzmV2xTUTUgDFmr0bRruT8lRrX8R/yGCRsMVMmG5hPw7gRAC/M9e9WHPqVDHaKtoKN7jNnvtw42w6MqYDaEGiG1Sq+3GXeQKxyrGEoNLLOJo2c0Z+C/G3gdVK3Fewnu6Coa9TqUFaZ/MLqyvjKFOw5VmNyfOQeM5GQ6QuTYLrG3UdDtjypARfZLxboZiagm6JweEkw27FQtZr7G0SGtxAyNTqJCG8jJLSA== X-YMail-OSG: pvbjDp0VM1mDQhYEjUWLRdruRQWmoPwVfIchHEs1pRME3BLG3.vx0eyJTTBbStp 6eeovMHV5w01FLr8GklS6kTZv8h27SxhFVZs7AmVpQJa3P.wmCT2t4oKcwMXjqAahUbB9BlCCKvz ftm09TF0JCTCuONIjvJKveacwI5drUh1kPERm8sU01OfvWV3gdA5t7XlQSySBxBZCHTethwQ5aam U8IMj.xwV5XpYuR269uzjVk5oWMOH2Q.S2pPt16weVBo8_2AkzgSyXaDEyQmiKTlRSqclfKvjOFn bIp6wzA1VFCvFXjd7bIZ5htncnDFKjte8JZr78E51CXO_L7zQC1R.88cA0qNHUEcfcIAKdrGGtUm iQQV4moSLxRmwXzEI_VjdEzZkreNQ_hdSwgXraFGXf1WTo9Mmuhu33rmh1Ea7QhPfCm..J8925vR DWxzCoFu3rFaRXYs2njZw8gRg2ebDNJvLvBDp4a9kdkh68FgE_07KpTj.qn_ud1.hxIgySapW1GQ 5Ig28nIM1CMESv1PKo_keF7OBJtlLAdd43dpIBqPurjUNDN9gnMGVZbmnXNx1gKvj7fqv3HyVobj gzORiKv3aa2TGdMsiZiIBc4LRfZlDJiNykGfApqZKvYOGZpM0HTTpDp1k3PS3x9wyEUbB_23sR0h yiKroZegkSjp9xXWLnO8NqHIyNETiMQ2NBENxXvtcncuyWg0qBmTT1XSb6X2wfpzUaOz5ynNvPyz Q7b7zjd2zbJWE1z_psLNOVmL1uZENIT6UO4bd7xFABcp9t8gZOsueuGFOQ1IaSU2zr1wkyIoSdpZ a8recMV_rshFyAbBO4bi68g59Trd4zPjHLIV2Mxu3if8Wuc3Oq8.8uAk1WqjOcKxN_Leudac3IGz I1fPU1oDfAMiJBNC.ixxTy1sVt9XrVDog.qs.oVP826zw0FE7cPl8VaVnCN9FdvF7ceFLGVT1c0K blVllZ3_JtTydpKlK0ref4sl7sl5qoAcI8Sn0VM6XdUZA8h1pMj2y46sNpB2Cl0eY1uS9yVzRDij xpgLsLNckv0H_.cAlzgFQvQyuPLGy4uQCgBgk29PMJXbeK8bbgCbbjaQSpbEW3ZTxbNi5t50wanw cS3l979laGVi95qEsafBCtDDOAlYYlQYbg4r1dy0r8T9Q53QnroKW5k5SjkedXmpoveeN53US4hg zZT8HoddjhOVHauUh5LE9LduM7dS.q6eVq0SkZFIz6Zp6uJM25Empatdh52dqfhiMpVPvVYBIMAK PMEkgsQ_WDjLJJXfvg5GPspFoaQkxKFwUx0LbWvQ1AwqWlw0fOBKNfz4XeWr3OBFT2.oarXEgZGB gWdDHq2NY6qTCHot.J8fY6uq.QDuBRmbUolBeYUsWtLbvF6.g47Gxf3ze7UPR7QzXFvkTMC63RGw y4lgXicwl.p8Zh4D_4KkZUmYnaQ_xuoYN53MxxnV24H5.zZZqh9UqSvPeeJXWbJTvI20VpdmChAI kevf9fmX.c3CuDkPLZm581kPnsCQPiS_9zwpF0tqdg.jsj_wBrPAA1Tpv8tHaI3araqgS.HG8yRP UKOs_Im6cQYVzmlkPLenAzj_kHYC7.rfpUpA1RCIDN8EpqjC4mQO084ANlJHTDwqAP417x_xWrP. KAeyrUf0J45ZTVWMryfwb4ot4dm_4B6NPc99vam.ghio0.Nuxr3YtoZ1E1vXIuJiKXDq3Qt9I7N8 5V0BjjXBUoL4hh.hVhI7tHfHHGgkCP3gBEmXEMvMKWZoF5ihzixzJ2aPSuLuAbMLbgPQBQftGQBx jibHQlgTyyPFtouqhIc9X4jDLelZwGzCRVyb1vVic97z7XO.sITJMd4sWLgxSgtEHda5ua4X3t.g RiWaGiQkQOikgHtPeIoRJlXwQ26w_wj5uJcXn3R_272_O2jXKq2ejLHhJjVAhrhFzhoMsunlQyzs .ZTnpRTrqzNyz76bG2RVqwmtW80BQ8rTcHN.DbV.B.MdNdfwLTnu7LMWNWOfPXmAwemoLl1W6zhe 0evPX9sZwHonBl_F8x2uQnnRzUGM9N3J0j1s.g8JRRGgSimbzTSmRBlVKiP86zJ8IFTv158vcN3p WOhUswy1EDxB6SvMAIdGXKg.uJOgowukPO36JXenccMQnAqv37lFFgdZ7RZC3r2Bq5sP5AYqxa.U oM6D3iuJGLQmP7bjrIwIJmgloJgeeIUP6F7rA9UojJ4bE X-Sonic-MF: Received: from sonic.gate.mail.ne1.yahoo.com by sonic303.consmr.mail.ne1.yahoo.com with HTTP; Tue, 24 May 2022 09:02:05 +0000 Date: Tue, 24 May 2022 09:02:00 +0000 (UTC) From: Ian Worthington To: "gcc-help@gcc.gnu.org" Message-ID: <1538337561.2146473.1653382920615@mail.yahoo.com> Subject: asm() / goto() concern MIME-Version: 1.0 References: <1538337561.2146473.1653382920615.ref@mail.yahoo.com> X-Mailer: WebService/1.1.20225 YMailNorrin X-Spam-Status: No, score=2.2 required=5.0 tests=BAYES_40, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, HTML_MESSAGE, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 May 2022 09:02:07 -0000 I'm trying to write some inline assembler but I see that asm() does not sup= port branching to labels, and that asm goto() does not support output (at l= east prior to gcc 11).=C2=A0=20 If I tie them together by declaring an output of the asm() as an input to a= sm goto() I assume that this will prevent the optimiser from reordering the= m, but how can I ensure that they are run without any intervening instructi= ons if the goto() has a dependency on the cc generated by the asm(), eg: =C2=A0=C2=A0=C2=A0 asm ( "algr %[rs],%[rb] \n\t" =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 : [rs] "+r" (sum) =C2=A0=C2=A0= =C2=A0// output =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 : [rb] "r"=C2=A0 (u64b)=C2=A0= =C2=A0 =C2=A0// input =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0); =C2=A0=C2=A0 =C2=A0asm goto ( "bc 3,%l[done]"=C2=A0=C2=A0 =C2=A0=C2=A0=C2= =A0 =C2=A0// branch if carry bit set (cc 2 or 3) =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 :=C2= =A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0= =C2=A0=C2=A0 =C2=A0// output =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 : [rs= ] "r"=C2=A0 (sum)=C2=A0=C2=A0 =C2=A0// input:=C2=A0 ensure this comes after= the algr =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 : =C2= =A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0= =C2=A0=C2=A0 =C2=A0// clobbers =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 : don= e =C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =C2=A0 );=C2=A0 Best wishes / Mejores deseos /=C2=A0=C2=A0Meilleurs v=C5=93ux Ian=C2=A0...