From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi1-x233.google.com (mail-oi1-x233.google.com [IPv6:2607:f8b0:4864:20::233]) by sourceware.org (Postfix) with ESMTPS id 1035A386EC4B for ; Fri, 8 Jan 2021 12:51:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 1035A386EC4B Received: by mail-oi1-x233.google.com with SMTP id s75so11231331oih.1 for ; Fri, 08 Jan 2021 04:51:26 -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:cc; bh=PJ3nXnuEM5oBO5lqURw34cFWzUuH3+0cD86E43uGD5g=; b=nUbCkXJ8y/Si0CbayQ59NI3T0cwzKf3MwH2kKqtcZ35gfVMCOawLqKOUnyCfHrTJ6S QKAmeDosXcvS60W1Ifi2Tm7PY6XJnWtZHidVAqLrM1g0Y7me7EhS18Ew/veNNFi1NIAi sA/b+3qsnc0TL7N+NAvOSHbGy3QPCI0y/zSOHWmmRwSg0cxhhQfiIYBgaMuiAMug3Aez lDcnoNvuvedZ2GrsJyGquWyBRXfmj/4T88D13jnWfIYTJuj4khAQuD/i/BrVnvhrs/4c 3mfAamtgeV3Oolbzj6UdVAO4rINsyCmvyPKx6CFl8PrhTNixPKNJUjgcvMq8OxSKQSwm PMFA== X-Gm-Message-State: AOAM5303sYK2QyMSyfzF2Sub/yHohl2gYc+ORod3pG1HwHz33yFitdYf xp1X431/8B6Wn01VPgdVhhOp5bY2zjnM/D/xNnw= X-Google-Smtp-Source: ABdhPJyWXombAkrUHHY+wCWnUneOs69rTbvINJSuyIWijBk3eTirbxKz9mz/qqKItVsiwgvUX8H77fg5tKoA7PocIb8= X-Received: by 2002:aca:f456:: with SMTP id s83mr2171133oih.58.1610110285449; Fri, 08 Jan 2021 04:51:25 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: "H.J. Lu" Date: Fri, 8 Jan 2021 04:50:49 -0800 Message-ID: Subject: Re: [PATCH] x86-64: Use R10 for profiling large model To: Uros Bizjak Cc: "gcc-patches@gcc.gnu.org" Content-Type: multipart/mixed; boundary="0000000000009d258e05b86303c9" X-Spam-Status: No, score=-3036.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, GIT_PATCH_0, 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: Fri, 08 Jan 2021 12:51:27 -0000 --0000000000009d258e05b86303c9 Content-Type: text/plain; charset="UTF-8" On Fri, Jan 8, 2021 at 1:24 AM Uros Bizjak wrote: > > > Since R10 is preserved when calling mcount, R10 can be used a scratch > > register to call mcount in large model. > > Please mention that R10 can be used as a static chain registers and is > preserved when calling mcount for nested functions. > > > gcc/ > > > > PR target/98482 > > * config/i386/i386.c (x86_function_profiler): Use R10 to call > > mcount in large model. Sorry for large model with PIC. > > > > gcc/testsuite/ > > > > PR target/98482 > > * gcc.target/i386/pr98482-1.c: New test. > > * gcc.target/i386/pr98482-1.c: Likewise. > > OK with comment fixes. > > Thanks, > Uros. > > + case CM_LARGE: > + /* NB: R10 can be used as a scratch register here since > + R10 is preserved when calling mcount. */ > > Also mention that R10 can be used as a static chain register and is > preserved when calling mcount for nested functions. > > + fprintf (file, "1:\tmovabsq\t$%s, %%r10\n\tcall\t*%%r10\n", > + mcount_name); > + break; This is the patch I am checking in. Thanks. -- H.J. --0000000000009d258e05b86303c9 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-x86-64-Use-R10-for-profiling-large-model.patch" Content-Disposition: attachment; filename="0001-x86-64-Use-R10-for-profiling-large-model.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kjoa22j20 RnJvbSA2ZGRhZWM2MGI4NGNjZGZiMTEyMjQ0NDBiZmZmYTg2MTEyMjQ0ZDg4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhqbC50b29sc0BnbWFpbC5jb20+CkRhdGU6 IFRodSwgNyBKYW4gMjAyMSAxNDoyNzo0OSAtMDgwMApTdWJqZWN0OiBbUEFUQ0hdIHg4Ni02NDog VXNlIFIxMCBmb3IgcHJvZmlsaW5nIGxhcmdlIG1vZGVsCgpSMTAgaXMgY2FsbGVyLXNhdmVkLiAg QWx0aG91Z2ggaXQgY2FuIGJlIHVzZWQgYXMgYSBzdGF0aWMgY2hhaW4gcmVnaXN0ZXIsCml0IGlz IHByZXNlcnZlZCB3aGVuIGNhbGxpbmcgbWNvdW50IGZvciBuZXN0ZWQgZnVuY3Rpb25zLiAgVXNl IFIxMCBhcyBhCnNjcmF0Y2ggcmVnaXN0ZXIgdG8gY2FsbCBtY291bnQgaW4gbGFyZ2UgbW9kZWwu CgpnY2MvCgoJUFIgdGFyZ2V0Lzk4NDgyCgkqIGNvbmZpZy9pMzg2L2kzODYuYyAoeDg2X2Z1bmN0 aW9uX3Byb2ZpbGVyKTogVXNlIFIxMCB0byBjYWxsCgltY291bnQgaW4gbGFyZ2UgbW9kZWwuICBT b3JyeSBmb3IgbGFyZ2UgbW9kZWwgd2l0aCBQSUMuCgpnY2MvdGVzdHN1aXRlLwoKCVBSIHRhcmdl dC85ODQ4MgoJKiBnY2MudGFyZ2V0L2kzODYvcHI5ODQ4Mi0xLmM6IE5ldyB0ZXN0LgoJKiBnY2Mu dGFyZ2V0L2kzODYvcHI5ODQ4Mi0xLmM6IExpa2V3aXNlLgotLS0KIGdjYy9jb25maWcvaTM4Ni9p Mzg2LmMgICAgICAgICAgICAgICAgICAgIHwgMjYgKysrKysrKysrKysrKysrKysrKysrLS0KIGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ByOTg0ODItMS5jIHwgIDkgKysrKysrKysKIGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ByOTg0ODItMi5jIHwgIDkgKysrKysrKysKIDMg ZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBt b2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9wcjk4NDgyLTEuYwogY3Jl YXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ByOTg0ODItMi5j CgpkaWZmIC0tZ2l0IGEvZ2NjL2NvbmZpZy9pMzg2L2kzODYuYyBiL2djYy9jb25maWcvaTM4Ni9p Mzg2LmMKaW5kZXggZmFkNTBlN2U1MzcuLmQzMDY4NDYyZmNkIDEwMDY0NAotLS0gYS9nY2MvY29u ZmlnL2kzODYvaTM4Ni5jCisrKyBiL2djYy9jb25maWcvaTM4Ni9pMzg2LmMKQEAgLTIwNzk0LDgg KzIwNzk0LDMwIEBAIHg4Nl9mdW5jdGlvbl9wcm9maWxlciAoRklMRSAqZmlsZSwgaW50IGxhYmVs bm8gQVRUUklCVVRFX1VOVVNFRCkKICAgICAgIGZwcmludGYgKGZpbGUsICJcdGxlYXFcdCVzUCVk KCUlcmlwKSwlJXIxMVxuIiwgTFBSRUZJWCwgbGFiZWxubyk7CiAjZW5kaWYKIAotICAgICAgaWYg KCFUQVJHRVRfUEVDT0ZGICYmIGZsYWdfcGljKQotCWZwcmludGYgKGZpbGUsICIxOlx0Y2FsbFx0 KiVzQEdPVFBDUkVMKCUlcmlwKVxuIiwgbWNvdW50X25hbWUpOworICAgICAgaWYgKCFUQVJHRVRf UEVDT0ZGKQorCXsKKwkgIHN3aXRjaCAoaXg4Nl9jbW9kZWwpCisJICAgIHsKKwkgICAgY2FzZSBD TV9MQVJHRToKKwkgICAgICAvKiBOQjogUjEwIGlzIGNhbGxlci1zYXZlZC4gIEFsdGhvdWdoIGl0 IGNhbiBiZSB1c2VkIGFzIGEKKwkJIHN0YXRpYyBjaGFpbiByZWdpc3RlciwgaXQgaXMgcHJlc2Vy dmVkIHdoZW4gY2FsbGluZworCQkgbWNvdW50IGZvciBuZXN0ZWQgZnVuY3Rpb25zLiAgKi8KKwkg ICAgICBmcHJpbnRmIChmaWxlLCAiMTpcdG1vdmFic3FcdCQlcywgJSVyMTBcblx0Y2FsbFx0KiUl cjEwXG4iLAorCQkgICAgICAgbWNvdW50X25hbWUpOworCSAgICAgIGJyZWFrOworCSAgICBjYXNl IENNX0xBUkdFX1BJQzoKKwkgICAgICBzb3JyeSAoInByb2ZpbGluZyAlPC1tY21vZGVsPWxhcmdl JT4gd2l0aCBQSUMgaXMgbm90IHN1cHBvcnRlZCIpOworCSAgICAgIGJyZWFrOworCSAgICBjYXNl IENNX1NNQUxMX1BJQzoKKwkgICAgY2FzZSBDTV9NRURJVU1fUElDOgorCSAgICAgIGZwcmludGYg KGZpbGUsICIxOlx0Y2FsbFx0KiVzQEdPVFBDUkVMKCUlcmlwKVxuIiwKKwkJICAgICAgIG1jb3Vu dF9uYW1lKTsKKwkgICAgICBicmVhazsKKwkgICAgZGVmYXVsdDoKKwkgICAgICB4ODZfcHJpbnRf Y2FsbF9vcl9ub3AgKGZpbGUsIG1jb3VudF9uYW1lKTsKKwkgICAgICBicmVhazsKKwkgICAgfQor CX0KICAgICAgIGVsc2UKIAl4ODZfcHJpbnRfY2FsbF9vcl9ub3AgKGZpbGUsIG1jb3VudF9uYW1l KTsKICAgICB9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9wcjk4 NDgyLTEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ByOTg0ODItMS5jCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi43MmQ1Y2NiMjY5YwotLS0gL2Rldi9u dWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ByOTg0ODItMS5jCkBAIC0w LDAgKzEsOSBAQAorLyogeyBkZy1kbyBjb21waWxlIHsgdGFyZ2V0IHsgKi0qLWxpbnV4KiAmJiB7 ICEgaWEzMiB9IH0gfSB9ICovCisvKiB7IGRnLXJlcXVpcmUtZWZmZWN0aXZlLXRhcmdldCBtZmVu dHJ5IH0gKi8KKy8qIHsgZGctb3B0aW9ucyAiLWZwcm9maWxlIC1tZmVudHJ5IC1PMiAtbWNtb2Rl bD1sYXJnZSIgfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyICJtb3ZhYnNxXHRc XFwkX19mZW50cnlfXywgJXIxMFxuXHRjYWxsXHRcXColcjEwIiB9IH0gKi8KKwordm9pZAorZnVu YyAodm9pZCkKK3sKK30KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2 L3ByOTg0ODItMi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvcHI5ODQ4Mi0yLmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmFlZDNjYTRiNmZmCi0tLSAv ZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvcHI5ODQ4Mi0yLmMK QEAgLTAsMCArMSw5IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQgeyAqLSotbGludXgq ICYmIHsgISBpYTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctcmVxdWlyZS1lZmZlY3RpdmUtdGFyZ2V0 IG1mZW50cnkgfSAqLworLyogeyBkZy1yZXF1aXJlLWVmZmVjdGl2ZS10YXJnZXQgZnBpYyB9ICov CisvKiB7IGRnLW9wdGlvbnMgIi1mcGljIC1mcHJvZmlsZSAtbWZlbnRyeSAtTzIgLW1jbW9kZWw9 bGFyZ2UiIH0gKi8KKwordm9pZAorZnVuYyAodm9pZCkKK3sKK30gLyogeyBkZy1tZXNzYWdlICJz b3JyeSwgdW5pbXBsZW1lbnRlZDogcHJvZmlsaW5nICctbWNtb2RlbD1sYXJnZScgd2l0aCBQSUMg aXMgbm90IHN1cHBvcnRlZCIgfSAqLwotLSAKMi4yOS4yCgo= --0000000000009d258e05b86303c9--