From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-qv1-xf2a.google.com (mail-qv1-xf2a.google.com [IPv6:2607:f8b0:4864:20::f2a]) by sourceware.org (Postfix) with ESMTPS id 43E543858D1E for ; Wed, 17 May 2023 18:29:31 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 43E543858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-qv1-xf2a.google.com with SMTP id 6a1803df08f44-623836551f5so5300946d6.1 for ; Wed, 17 May 2023 11:29:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684348170; x=1686940170; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=JY+1r9U5igbtEtzhz0v58d/JHm8bH3QNjxN1d9Xs/ew=; b=fM4VByNZYer6isR9FFytX4r0EdfiCRtgWabpCWjEs7WK16UbvXVkVc4oe8aFSrX7Ph rpB9B3Oc2xTAI2EMcZF2hP7GYt5P2ujB8IucsDHLFK366DtFHySVTx9MXoS1gAZPe6iD 5JtWuwo624guJmydEeA0ukRBhBgSRefj/s/Hk8X1TFpboVjVBlVZBZvJu8ghwMJxk0C9 JLJaC7VCNrSvJNEjs8+qPsLStBxxNua97th55aL2Et0LVEA8t45/2H1xxt07tLEzyR8l 3ZKOSXgzWbH8srrPNrIJ3uDlqJ7QyrTAwbWYOE70PbxwOo/+igaxdrDqJbG+LH9ikwUo OaXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684348170; x=1686940170; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=JY+1r9U5igbtEtzhz0v58d/JHm8bH3QNjxN1d9Xs/ew=; b=iqFTn/Ky0rRenHo+DBQe2tpMKlArg3+prVQrRd6nBFfogHSy85VmT0/W0IsXsSWXS7 2uaBE+pB6/eOd9txvfDj5pU2g5SIA+2PnR2Ab5/mbpkAJIbyaQWTUFqDy8EHoGUbnDk+ qsmZzZ8t/8sabawyUG0lm7aA1HdX5qVHG8uFKVjzlrBtx62hOBOCUP1p2hFNM6h7xcNJ +SSGd7azbp7iNl+L5uqSWwqORYRBn8iItw5mATXWijyEq0B4leMP34/5OxnxNW3fstXY a1V2OD7kUNVWv9nZHrp0XohkAKzXcEIE4RPYLy6BDeyGHLQIC0GGu1Yx03RUv+CWD/rv q6vw== X-Gm-Message-State: AC+VfDxfzqCA2rk+71+kjjSULSX2tXsQt3xCHvWyQ3cJ1xl1DXHtG6MC Tp0UgItFqO4xLYQw0XCWToQ7cWIHfXzJGjRcy45r7k77zg4W6A== X-Google-Smtp-Source: ACHHUZ429UYa9QYigycv8HJHotlTwwNUkVilPfjd4cq3N+v86I+wE08NVLg2NVORHSUEknpT7DvuasbF813AyOGe4/w= X-Received: by 2002:a05:6214:e6e:b0:615:29ab:e4a8 with SMTP id jz14-20020a0562140e6e00b0061529abe4a8mr1025103qvb.31.1684348170296; Wed, 17 May 2023 11:29:30 -0700 (PDT) MIME-Version: 1.0 From: Uros Bizjak Date: Wed, 17 May 2023 20:29:19 +0200 Message-ID: Subject: [COMMITTED] i386: Adjust emulated integer vector mode multiplication costs To: "gcc-patches@gcc.gnu.org" Content-Type: multipart/mixed; boundary="0000000000005ea15305fbe7de1d" X-Spam-Status: No, score=-8.0 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,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --0000000000005ea15305fbe7de1d Content-Type: text/plain; charset="UTF-8" Returned integer vector mode costs of emulated modes in ix86_multiplication_cost are wrong and do not reflect generated instruction sequences. Rewrite handling of different integer vector modes and different target ABIs to return real instruction counts in order to calculate better costs of various emulated modes. gcc/ChangeLog: * config/i386/i386.cc (ix86_multiplication_cost): Correct calculation of integer vector mode costs to reflect generated instruction sequences of different integer vector modes and different target ABIs. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. Uros. --0000000000005ea15305fbe7de1d Content-Type: text/plain; charset="US-ASCII"; name="p.diff.txt" Content-Disposition: attachment; filename="p.diff.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lhs1eho70 ZGlmZiAtLWdpdCBhL2djYy9jb25maWcvaTM4Ni9pMzg2LmNjIGIvZ2NjL2NvbmZpZy9pMzg2L2kz ODYuY2MKaW5kZXggNDk4ZmFjNDY4YjUuLjlhYjI0MjQyYjU5IDEwMDY0NAotLS0gYS9nY2MvY29u ZmlnL2kzODYvaTM4Ni5jYworKysgYi9nY2MvY29uZmlnL2kzODYvaTM4Ni5jYwpAQCAtMjA0NjMs MzYgKzIwNDYzLDUyIEBAIGl4ODZfbXVsdGlwbGljYXRpb25fY29zdCAoY29uc3Qgc3RydWN0IHBy b2Nlc3Nvcl9jb3N0cyAqY29zdCwKICAgICByZXR1cm4gIGl4ODZfdmVjX2Nvc3QgKG1vZGUsCiAJ CQkgICBpbm5lcl9tb2RlID09IERGbW9kZSA/IGNvc3QtPm11bHNkIDogY29zdC0+bXVsc3MpOwog ICBlbHNlIGlmIChHRVRfTU9ERV9DTEFTUyAobW9kZSkgPT0gTU9ERV9WRUNUT1JfSU5UKQotICAg IHsKLSAgICAgIC8qIHZwbXVsbHEgaXMgdXNlZCBpbiB0aGlzIGNhc2UuIE5vIGVtdWxhdGlvbiBp cyBuZWVkZWQuICAqLwotICAgICAgaWYgKFRBUkdFVF9BVlg1MTJEUSkKLQlyZXR1cm4gaXg4Nl92 ZWNfY29zdCAobW9kZSwgY29zdC0+bXVsc3MpOworICAgIHN3aXRjaCAobW9kZSkKKyAgICAgIHsK KyAgICAgIGNhc2UgVjE2UUltb2RlOgorCS8qIFYqUUltb2RlIGlzIGVtdWxhdGVkIHdpdGggNC0x MSBpbnNucy4gICovCisJaWYgKFRBUkdFVF9BVlg1MTJCVyAmJiBUQVJHRVRfQVZYNTEyVkwpCisJ ICByZXR1cm4gaXg4Nl92ZWNfY29zdCAobW9kZSwgY29zdC0+bXVsc3MgKyBjb3N0LT5zc2Vfb3Ag KiAzKTsKKwllbHNlIGlmIChUQVJHRVRfWE9QKQorCSAgcmV0dXJuIGl4ODZfdmVjX2Nvc3QgKG1v ZGUsIGNvc3QtPm11bHNzICogMiArIGNvc3QtPnNzZV9vcCAqIDUpOworCS8qIEZBTExUSFJVICov CisgICAgICBjYXNlIFYzMlFJbW9kZToKKwlpZiAoVEFSR0VUX0FWWDUxMkJXICYmIG1vZGUgPT0g VjMyUUltb2RlKQorCSAgcmV0dXJuIGl4ODZfdmVjX2Nvc3QgKG1vZGUsIGNvc3QtPm11bHNzICsg Y29zdC0+c3NlX29wICogMyk7CisJZWxzZQorCSAgcmV0dXJuIGl4ODZfdmVjX2Nvc3QgKG1vZGUs IGNvc3QtPm11bHNzICogMiArIGNvc3QtPnNzZV9vcCAqIDcpOwogCi0gICAgICAvKiBWKlFJbW9k ZSBpcyBlbXVsYXRlZCB3aXRoIDctMTMgaW5zbnMuICAqLwotICAgICAgaWYgKG1vZGUgPT0gVjE2 UUltb2RlIHx8IG1vZGUgPT0gVjMyUUltb2RlKQotCXsKLQkgIGludCBleHRyYSA9IDExOwotCSAg aWYgKFRBUkdFVF9YT1AgJiYgbW9kZSA9PSBWMTZRSW1vZGUpCi0JICAgIGV4dHJhID0gNTsKLQkg IGVsc2UgaWYgKFRBUkdFVF9TU1NFMykKLQkgICAgZXh0cmEgPSA2OwotCSAgcmV0dXJuIGl4ODZf dmVjX2Nvc3QgKG1vZGUsIGNvc3QtPm11bHNzICogMiArIGNvc3QtPnNzZV9vcCAqIGV4dHJhKTsK LQl9Ci0gICAgICAvKiBWKkRJbW9kZSBpcyBlbXVsYXRlZCB3aXRoIDUtOCBpbnNucy4gICovCi0g ICAgICBlbHNlIGlmIChtb2RlID09IFYyREltb2RlIHx8IG1vZGUgPT0gVjRESW1vZGUpCi0Jewot CSAgaWYgKFRBUkdFVF9YT1AgJiYgbW9kZSA9PSBWMkRJbW9kZSkKLQkgICAgcmV0dXJuIGl4ODZf dmVjX2Nvc3QgKG1vZGUsIGNvc3QtPm11bHNzICogMiArIGNvc3QtPnNzZV9vcCAqIDMpOwotCSAg ZWxzZQotCSAgICByZXR1cm4gaXg4Nl92ZWNfY29zdCAobW9kZSwgY29zdC0+bXVsc3MgKiAzICsg Y29zdC0+c3NlX29wICogNSk7Ci0JfQotICAgICAgLyogV2l0aG91dCBzc2U0LjEsIHdlIGRvbid0 IGhhdmUgUE1VTExEOyBpdCdzIGVtdWxhdGVkIHdpdGggNwotCSBpbnNucywgaW5jbHVkaW5nIHR3 byBQTVVMVURRLiAgKi8KLSAgICAgIGVsc2UgaWYgKG1vZGUgPT0gVjRTSW1vZGUgJiYgIShUQVJH RVRfU1NFNF8xIHx8IFRBUkdFVF9BVlgpKQotCXJldHVybiBpeDg2X3ZlY19jb3N0IChtb2RlLCBj b3N0LT5tdWxzcyAqIDIgKyBjb3N0LT5zc2Vfb3AgKiA1KTsKLSAgICAgIGVsc2UKKyAgICAgIGNh c2UgVjY0UUltb2RlOgorCXJldHVybiBpeDg2X3ZlY19jb3N0IChtb2RlLCBjb3N0LT5tdWxzcyAq IDIgKyBjb3N0LT5zc2Vfb3AgKiA5KTsKKworICAgICAgY2FzZSBWNFNJbW9kZToKKwkvKiBwbXVs bGQgaXMgdXNlZCBpbiB0aGlzIGNhc2UuIE5vIGVtdWxhdGlvbiBpcyBuZWVkZWQuICAqLworCWlm IChUQVJHRVRfU1NFNF8xKQorCSAgZ290byBkb19uYXRpdmU7CisJLyogVjRTSW1vZGUgaXMgZW11 bGF0ZWQgd2l0aCA3IGluc25zLiAgKi8KKwllbHNlCisJICByZXR1cm4gaXg4Nl92ZWNfY29zdCAo bW9kZSwgY29zdC0+bXVsc3MgKiAyICsgY29zdC0+c3NlX29wICogNSk7CisKKyAgICAgIGNhc2Ug VjJESW1vZGU6CisgICAgICBjYXNlIFY0REltb2RlOgorCS8qIHZwbXVsbHEgaXMgdXNlZCBpbiB0 aGlzIGNhc2UuIE5vIGVtdWxhdGlvbiBpcyBuZWVkZWQuICAqLworCWlmIChUQVJHRVRfQVZYNTEy RFEgJiYgVEFSR0VUX0FWWDUxMlZMKQorCSAgZ290byBkb19uYXRpdmU7CisJLyogVipESW1vZGUg aXMgZW11bGF0ZWQgd2l0aCA2LTggaW5zbnMuICAqLworCWVsc2UgaWYgKFRBUkdFVF9YT1AgJiYg bW9kZSA9PSBWMkRJbW9kZSkKKwkgIHJldHVybiBpeDg2X3ZlY19jb3N0IChtb2RlLCBjb3N0LT5t dWxzcyAqIDIgKyBjb3N0LT5zc2Vfb3AgKiA0KTsKKwkvKiBGQUxMVEhSVSAqLworICAgICAgY2Fz ZSBWOERJbW9kZToKKwkvKiB2cG11bGxxIGlzIHVzZWQgaW4gdGhpcyBjYXNlLiBObyBlbXVsYXRp b24gaXMgbmVlZGVkLiAgKi8KKwlpZiAoVEFSR0VUX0FWWDUxMkRRICYmIG1vZGUgPT0gVjhESW1v ZGUpCisJICBnb3RvIGRvX25hdGl2ZTsKKwllbHNlCisJICByZXR1cm4gaXg4Nl92ZWNfY29zdCAo bW9kZSwgY29zdC0+bXVsc3MgKiAzICsgY29zdC0+c3NlX29wICogNSk7CisKKyAgICAgIGRlZmF1 bHQ6CisgICAgICBkb19uYXRpdmU6CiAJcmV0dXJuIGl4ODZfdmVjX2Nvc3QgKG1vZGUsIGNvc3Qt Pm11bHNzKTsKLSAgICB9CisgICAgICB9CiAgIGVsc2UKICAgICByZXR1cm4gKGNvc3QtPm11bHRf aW5pdFtNT0RFX0lOREVYIChtb2RlKV0gKyBjb3N0LT5tdWx0X2JpdCAqIDcpOwogfQo= --0000000000005ea15305fbe7de1d--