From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28865 invoked by alias); 2 Jun 2009 11:16:32 -0000 Received: (qmail 28856 invoked by uid 22791); 2 Jun 2009 11:16:31 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-fx0-f213.google.com (HELO mail-fx0-f213.google.com) (209.85.220.213) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 02 Jun 2009 11:16:26 +0000 Received: by fxm9 with SMTP id 9so9253872fxm.8 for ; Tue, 02 Jun 2009 04:16:23 -0700 (PDT) MIME-Version: 1.0 Received: by 10.204.62.133 with SMTP id x5mr6787770bkh.60.1243941383417; Tue, 02 Jun 2009 04:16:23 -0700 (PDT) Date: Tue, 02 Jun 2009 11:16:00 -0000 Message-ID: <5787cf470906020416v336c0afdiaf4906f833f15f51@mail.gmail.com> Subject: [PATCH, i386-driver]: Ignore -march and -mtune for native target when not compiled with gcc From: Uros Bizjak To: "gcc-patches@gcc.gnu.org" Content-Type: multipart/mixed; boundary=001636c5b47047b0a2046b5bac82 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2009-06/txt/msg00138.txt.bz2 --001636c5b47047b0a2046b5bac82 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-length: 710 Hello! Attached patch teaches i386 driver to ignore -march and -mtune switches for native target when the driver is not compiled with gcc. By ignoring the switches, the compiler generates code for its default target, which is max that we can do in this case (*). The driver also optimizes concatenation of options a bit. 2009-06-02 Uros Bizjak * config/i386/driver-i386.c (describe_cache): Optimize concatenation of strings. (host_detect_local_cpu): Ditto. (host_detect_local_cpu): Ignore -march and -mtune for native target when not compiling with GCC. Any comments on this approach? (*) driver uses gcc specific asm to use cpuid insn, so it must be compiled using gcc. Uros. --001636c5b47047b0a2046b5bac82 Content-Type: text/plain; charset=US-ASCII; name="p.diff.txt" Content-Disposition: attachment; filename="p.diff.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fvgijweq0 Content-length: 4266 SW5kZXg6IGRyaXZlci1pMzg2LmMKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0gZHJpdmVyLWkzODYuYwkocmV2aXNpb24gMTQ4MDgwKQorKysgZHJpdmVy LWkzODYuYwkod29ya2luZyBjb3B5KQpAQCAtNDYsMTIgKzQ2LDEyIEBAIGRl c2NyaWJlX2NhY2hlIChzdHJ1Y3QgY2FjaGVfZGVzYyBsZXZlbDEKICAgLyog QXQgdGhlIG1vbWVudCwgZ2NjIGRvZXMgbm90IHVzZSB0aGUgaW5mb3JtYXRp b24KICAgICAgYWJvdXQgdGhlIGFzc29jaWF0aXZpdHkgb2YgdGhlIGNhY2hl LiAgKi8KIAotICBzcHJpbnRmIChzaXplLCAiLS1wYXJhbSBsMS1jYWNoZS1z aXplPSV1IiwgbGV2ZWwxLnNpemVrYik7Ci0gIHNwcmludGYgKGxpbmUsICIt LXBhcmFtIGwxLWNhY2hlLWxpbmUtc2l6ZT0ldSIsIGxldmVsMS5saW5lKTsK KyAgc3ByaW50ZiAoc2l6ZSwgIi0tcGFyYW0gbDEtY2FjaGUtc2l6ZT0ldSAi LCBsZXZlbDEuc2l6ZWtiKTsKKyAgc3ByaW50ZiAobGluZSwgIi0tcGFyYW0g bDEtY2FjaGUtbGluZS1zaXplPSV1ICIsIGxldmVsMS5saW5lKTsKIAotICBz cHJpbnRmIChzaXplMiwgIi0tcGFyYW0gbDItY2FjaGUtc2l6ZT0ldSIsIGxl dmVsMi5zaXpla2IpOworICBzcHJpbnRmIChzaXplMiwgIi0tcGFyYW0gbDIt Y2FjaGUtc2l6ZT0ldSAiLCBsZXZlbDIuc2l6ZWtiKTsKIAotICByZXR1cm4g Y29uY2F0IChzaXplLCAiICIsIGxpbmUsICIgIiwgc2l6ZTIsICIgIiwgTlVM TCk7CisgIHJldHVybiBjb25jYXQgKHNpemUsIGxpbmUsIHNpemUyLCBOVUxM KTsKIH0KIAogLyogRGV0ZWN0IEwyIGNhY2hlIHBhcmFtZXRlcnMgdXNpbmcg Q1BVSUQgZXh0ZW5kZWQgZnVuY3Rpb24gMHg4MDAwMDAwNi4gICovCkBAIC02 MDgsNTUgKzYwOCwzOCBAQCBjb25zdCBjaGFyICpob3N0X2RldGVjdF9sb2Nh bF9jcHUgKGludCBhCiAgIGlmIChhcmNoKQogICAgIHsKICAgICAgIGlmICho YXNfY21weGNoZzE2YikKLQlvcHRpb25zID0gY29uY2F0IChvcHRpb25zLCAi LW1jeDE2ICIsIE5VTEwpOworCW9wdGlvbnMgPSBjb25jYXQgKG9wdGlvbnMs ICIgLW1jeDE2IiwgTlVMTCk7CiAgICAgICBpZiAoaGFzX2xhaGZfbG0pCi0J b3B0aW9ucyA9IGNvbmNhdCAob3B0aW9ucywgIi1tc2FoZiAiLCBOVUxMKTsK KwlvcHRpb25zID0gY29uY2F0IChvcHRpb25zLCAiIC1tc2FoZiIsIE5VTEwp OwogICAgICAgaWYgKGhhc19tb3ZiZSkKLQlvcHRpb25zID0gY29uY2F0IChv cHRpb25zLCAiLW1tb3ZiZSAiLCBOVUxMKTsKKwlvcHRpb25zID0gY29uY2F0 IChvcHRpb25zLCAiIC1tbW92YmUiLCBOVUxMKTsKICAgICAgIGlmIChoYXNf YWVzKQotCW9wdGlvbnMgPSBjb25jYXQgKG9wdGlvbnMsICItbWFlcyAiLCBO VUxMKTsKKwlvcHRpb25zID0gY29uY2F0IChvcHRpb25zLCAiIC1tYWVzIiwg TlVMTCk7CiAgICAgICBpZiAoaGFzX3BjbG11bCkKLQlvcHRpb25zID0gY29u Y2F0IChvcHRpb25zLCAiLW1wY2xtdWwgIiwgTlVMTCk7CisJb3B0aW9ucyA9 IGNvbmNhdCAob3B0aW9ucywgIiAtbXBjbG11bCIsIE5VTEwpOwogICAgICAg aWYgKGhhc19wb3BjbnQpCi0Jb3B0aW9ucyA9IGNvbmNhdCAob3B0aW9ucywg Ii1tcG9wY250ICIsIE5VTEwpOworCW9wdGlvbnMgPSBjb25jYXQgKG9wdGlv bnMsICIgLW1wb3BjbnQiLCBOVUxMKTsKKwogICAgICAgaWYgKGhhc19hdngp Ci0Jb3B0aW9ucyA9IGNvbmNhdCAob3B0aW9ucywgIi1tYXZ4ICIsIE5VTEwp OworCW9wdGlvbnMgPSBjb25jYXQgKG9wdGlvbnMsICIgLW1hdngiLCBOVUxM KTsKICAgICAgIGVsc2UgaWYgKGhhc19zc2U0XzIpCi0Jb3B0aW9ucyA9IGNv bmNhdCAob3B0aW9ucywgIi1tc3NlNC4yICIsIE5VTEwpOworCW9wdGlvbnMg PSBjb25jYXQgKG9wdGlvbnMsICIgLW1zc2U0LjIiLCBOVUxMKTsKICAgICAg IGVsc2UgaWYgKGhhc19zc2U0XzEpCi0Jb3B0aW9ucyA9IGNvbmNhdCAob3B0 aW9ucywgIi1tc3NlNC4xICIsIE5VTEwpOworCW9wdGlvbnMgPSBjb25jYXQg KG9wdGlvbnMsICIgLW1zc2U0LjEiLCBOVUxMKTsKICAgICB9CiAKIGRvbmU6 Ci0gIHJldHVybiBjb25jYXQgKGNhY2hlLCAiLW0iLCBhcmd2WzBdLCAiPSIs IGNwdSwgIiAiLCBvcHRpb25zLCBOVUxMKTsKKyAgcmV0dXJuIGNvbmNhdCAo Y2FjaGUsICItbSIsIGFyZ3ZbMF0sICI9IiwgY3B1LCBvcHRpb25zLCBOVUxM KTsKIH0KICNlbHNlCiAKLS8qIElmIHdlIGFyZW4ndCBjb21waWxpbmcgd2l0 aCBHQ0Mgd2UganVzdCBwcm92aWRlIGEgbWluaW1hbAotICAgZGVmYXVsdCB2 YWx1ZS4gICovCisvKiBJZiB3ZSBhcmVuJ3QgY29tcGlsaW5nIHdpdGggR0ND IHRoZW4gdGhlIGRyaXZlciB3aWxsIGp1c3QgaWdub3JlCisgICAtbWFyY2gg YW5kIC1tdHVuZSAibmF0aXZlIiB0YXJnZXQgYW5kIHdpbGwgbGVhdmUgdG8g dGhlIG5ld2x5CisgICBidWlsdCBjb21waWxlciB0byBnZW5lcmF0ZSBjb2Rl IGZvciBpdHMgZGVmYXVsdCB0YXJnZXQuICAqLwogCi1jb25zdCBjaGFyICpo b3N0X2RldGVjdF9sb2NhbF9jcHUgKGludCBhcmdjLCBjb25zdCBjaGFyICoq YXJndikKK2NvbnN0IGNoYXIgKmhvc3RfZGV0ZWN0X2xvY2FsX2NwdSAoaW50 IGFyZ2MgQVRUUklCVVRFX1VOVVNFRCwKKwkJCQkgICBjb25zdCBjaGFyICoq YXJndiBBVFRSSUJVVEVfVU5VU0VEKQogewotICBjb25zdCBjaGFyICpjcHU7 Ci0gIGJvb2wgYXJjaDsKLQotICBpZiAoYXJnYyA8IDEpCi0gICAgcmV0dXJu IE5VTEw7Ci0KLSAgYXJjaCA9ICFzdHJjbXAgKGFyZ3ZbMF0sICJhcmNoIik7 Ci0KLSAgaWYgKCFhcmNoICYmIHN0cmNtcCAoYXJndlswXSwgInR1bmUiKSkK LSAgICByZXR1cm4gTlVMTDsKLSAgCi0gIGlmIChhcmNoKQotICAgIHsKLSAg ICAgIC8qIEZJWE1FOiBpMzg2IGlzIHdyb25nIGZvciA2NGJpdCBjb21waWxl ci4gIEhvdyBjYW4gd2UgdGVsbCBpZgotCSB3ZSBhcmUgZ2VuZXJhdGluZyA2 NGJpdCBvciAzMmJpdCBjb2RlPyAgKi8KLSAgICAgIGNwdSA9ICJpMzg2IjsK LSAgICB9Ci0gIGVsc2UKLSAgICBjcHUgPSAiZ2VuZXJpYyI7Ci0KLSAgcmV0 dXJuIGNvbmNhdCAoIi1tIiwgYXJndlswXSwgIj0iLCBjcHUsIE5VTEwpOwor ICByZXR1cm4gTlVMTDsKIH0KICNlbmRpZiAvKiBfX0dOVUNfXyAqLwo= --001636c5b47047b0a2046b5bac82--