public inbox for gcc-prs@sourceware.org help / color / mirror / Atom feed
From: Nagy Endre <gumo@lucifer.kgt.bme.hu> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, Subject: Re: optimization/10620: for(i=25000;i;i--) {} generates wrong assembly source in avr-gcc with -O2 Date: Fri, 09 May 2003 08:56:00 -0000 [thread overview] Message-ID: <20030509085601.6871.qmail@sources.redhat.com> (raw) The following reply was made to PR optimization/10620; it has been noted by GNATS. From: Nagy Endre <gumo@lucifer.kgt.bme.hu> To: Dara Hazeghi <dhazeghi@yahoo.com> Cc: gcc-gnats@gcc.gnu.org Subject: Re: optimization/10620: for(i=25000;i;i--) {} generates wrong assembly source in avr-gcc with -O2 Date: Fri, 9 May 2003 10:53:41 +0200 (CEST) This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --1117258244-1711166521-1052470239=:25817 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: <Pine.LNX.4.55.0305091050421.25817@lucifer.kgt.bme.hu> > could the submitter of this bug please include a full testcase that > demonstrates the bug (ie something that will compile without > additions). I cannot replicate the assembly in question using 3.3 > branch and: > void main(){int i;for(i=25000;i;i--){}} Yes, of course. The simplest case is: ================================= int main(void) { unsigned int i,j; for(j=500;j;j--) { for(i=25000;i;i--) {} } return 0; } ================================= So that i is allocated in narrow registers. The resulting asm code varies depending on the initial value of i, if it is less than 32768. The inner loop will be: .L10: subi r18,lo8(-(-25)) sbci r19,hi8(-(-25)) brne .L10 Where -25 varies depending on i. The compiler command: avr-gcc -g -Wall -O2 -mmcu=at90s8515 -S -o test2.S test2.c (see attachments) I've used the gcc-3.3 prerelease included in WinAVR: http://prdownloads.sourceforge.net/winavr/WinAVR-20030424-bin-install.exe?download Excuse me for being inaccurate. Thanks, Gumo --1117258244-1711166521-1052470239=:25817 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="test2.c" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.4.55.0305091050390.25817@lucifer.kgt.bme.hu> Content-Description: Content-Disposition: ATTACHMENT; FILENAME="test2.c" aW50IG1haW4odm9pZCkgew0KICAgIHVuc2lnbmVkIGludCBpLGo7DQogICAg Zm9yKGo9NTAwO2o7ai0tKSB7DQogICAgICAgIGZvcihpPTI1MDAwO2k7aS0t KSB7fQ0KICAgIH0NCiAgICByZXR1cm4gMDsNCn0NCg== --1117258244-1711166521-1052470239=:25817 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="test2.S" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.4.55.0305091050391.25817@lucifer.kgt.bme.hu> Content-Description: Content-Disposition: ATTACHMENT; FILENAME="test2.S" CS5maWxlCSJ0ZXN0Mi5jIg0NCgkuYXJjaCBhdDkwczg1MTUNDQpfX1NSRUdf XyA9IDB4M2YNDQpfX1NQX0hfXyA9IDB4M2UNDQpfX1NQX0xfXyA9IDB4M2QN DQpfX3RtcF9yZWdfXyA9IDANDQpfX3plcm9fcmVnX18gPSAxDQ0KCS5nbG9i YWwgX19kb19jb3B5X2RhdGENDQoJLmdsb2JhbCBfX2RvX2NsZWFyX2Jzcw0N Cgkuc3RhYnMJIkM6XFxHVU1PXFxwcm9nXFxhdG1lbF9jXFxPUzg1MTUvIiwx MDAsMCwwLC5MdGV4dDANDQoJLnN0YWJzCSJ0ZXN0Mi5jIiwxMDAsMCwwLC5M dGV4dDANDQoJLnRleHQNDQouTHRleHQwOg0NCgkuc3RhYnMJImdjYzJfY29t cGlsZWQuIiw2MCwwLDAsMA0NCgkuc3RhYnMJImludDp0KDAsMSk9cigwLDEp Oy0zMjc2ODszMjc2NzsiLDEyOCwwLDAsMA0NCgkuc3RhYnMJImNoYXI6dCgw LDIpPXIoMCwyKTswOzEyNzsiLDEyOCwwLDAsMA0NCgkuc3RhYnMJImxvbmcg aW50OnQoMCwzKT1AczMyO3IoMCwzKTswMDIwMDAwMDAwMDAwOzAwMTc3Nzc3 Nzc3Nzc7IiwxMjgsMCwwLDANDQoJLnN0YWJzCSJ1bnNpZ25lZCBpbnQ6dCgw LDQpPXIoMCw0KTswMDAwMDAwMDAwMDAwOzAwMDAwMDAxNzc3Nzc7IiwxMjgs MCwwLDANDQoJLnN0YWJzCSJsb25nIHVuc2lnbmVkIGludDp0KDAsNSk9QHMz MjtyKDAsNSk7MDAwMDAwMDAwMDAwMDswMDM3Nzc3Nzc3Nzc3OyIsMTI4LDAs MCwwDQ0KCS5zdGFicwkibG9uZyBsb25nIGludDp0KDAsNik9QHM2NDtyKDAs Nik7MDEwMDAwMDAwMDAwMDAwMDAwMDAwMDA7MDc3Nzc3Nzc3Nzc3Nzc3Nzc3 Nzc3NzsiLDEyOCwwLDAsMA0NCgkuc3RhYnMJImxvbmcgbG9uZyB1bnNpZ25l ZCBpbnQ6dCgwLDcpPUBzNjQ7cigwLDcpOzAwMDAwMDAwMDAwMDA7MDE3Nzc3 Nzc3Nzc3Nzc3Nzc3Nzc3Nzc7IiwxMjgsMCwwLDANDQoJLnN0YWJzCSJzaG9y dCBpbnQ6dCgwLDgpPXIoMCw4KTstMzI3Njg7MzI3Njc7IiwxMjgsMCwwLDAN DQoJLnN0YWJzCSJzaG9ydCB1bnNpZ25lZCBpbnQ6dCgwLDkpPXIoMCw5KTsw MDAwMDAwMDAwMDAwOzAwMDAwMDAxNzc3Nzc7IiwxMjgsMCwwLDANDQoJLnN0 YWJzCSJzaWduZWQgY2hhcjp0KDAsMTApPUBzODtyKDAsMTApOy0xMjg7MTI3 OyIsMTI4LDAsMCwwDQ0KCS5zdGFicwkidW5zaWduZWQgY2hhcjp0KDAsMTEp PUBzODtyKDAsMTEpOzA7MjU1OyIsMTI4LDAsMCwwDQ0KCS5zdGFicwkiZmxv YXQ6dCgwLDEyKT1yKDAsMSk7NDswOyIsMTI4LDAsMCwwDQ0KCS5zdGFicwki ZG91YmxlOnQoMCwxMyk9cigwLDEpOzQ7MDsiLDEyOCwwLDAsMA0NCgkuc3Rh YnMJImxvbmcgZG91YmxlOnQoMCwxNCk9cigwLDEpOzQ7MDsiLDEyOCwwLDAs MA0NCgkuc3RhYnMJImNvbXBsZXggaW50OnQoMCwxNSk9czRyZWFsOigwLDEp LDAsMTY7aW1hZzooMCwxKSwxNiwxNjs7IiwxMjgsMCwwLDANDQoJLnN0YWJz CSJjb21wbGV4IGZsb2F0OnQoMCwxNik9UjM7ODswOyIsMTI4LDAsMCwwDQ0K CS5zdGFicwkiY29tcGxleCBkb3VibGU6dCgwLDE3KT1SMzs4OzA7IiwxMjgs MCwwLDANDQoJLnN0YWJzCSJjb21wbGV4IGxvbmcgZG91YmxlOnQoMCwxOCk9 UjM7ODswOyIsMTI4LDAsMCwwDQ0KCS5zdGFicwkiX19idWlsdGluX3ZhX2xp c3Q6dCgwLDE5KT0qKDAsMjApPSgwLDIwKSIsMTI4LDAsMCwwDQ0KCS5zdGFi cwkiX0Jvb2w6dCgwLDIxKT1Aczg7LTE2OyIsMTI4LDAsMCwwDQ0KCS5zdGFi cwkidGVzdDIuYyIsMTMwLDAsMCwwDQ0KCS5zdGFicwkibWFpbjpGKDAsMSki LDM2LDAsMSxtYWluDQ0KLmdsb2JhbAltYWluDQ0KCS50eXBlCW1haW4sIEBm dW5jdGlvbg0NCm1haW46DQ0KCS5zdGFibiA2OCwwLDEsLkxNMS1tYWluDQ0K LkxNMToNDQovKiBwcm9sb2d1ZTogZnJhbWUgc2l6ZT0wICovDQ0KCWxkaSBy MjgsbG84KF9fc3RhY2sgLSAwKQ0NCglsZGkgcjI5LGhpOChfX3N0YWNrIC0g MCkNDQoJb3V0IF9fU1BfSF9fLHIyOQ0NCglvdXQgX19TUF9MX18scjI4DQ0K LyogcHJvbG9ndWUgZW5kIChzaXplPTQpICovDQ0KCS5zdGFibiA2OCwwLDMs LkxNMi1tYWluDQ0KLkxNMjoNDQouTEJCMjoNDQoJbGRpIHIyNCxsbzgoNTAw KQ0NCglsZGkgcjI1LGhpOCg1MDApDQ0KLkwxMToNDQoJLnN0YWJuIDY4LDAs NCwuTE0zLW1haW4NDQouTE0zOg0NCglsZGkgcjE4LGxvOCgyNTAwMCkNDQoJ bGRpIHIxOSxoaTgoMjUwMDApDQ0KLkwxMDoNDQoJc3ViaSByMTgsbG84KC0o LTI1KSkNDQoJc2JjaSByMTksaGk4KC0oLTI1KSkNDQoJYnJuZSAuTDEwDQ0K CS5zdGFibiA2OCwwLDMsLkxNNC1tYWluDQ0KLkxNNDoNDQoJc2JpdyByMjQs MQ0NCglicm5lIC5MMTENDQoJLnN0YWJuIDY4LDAsNywuTE01LW1haW4NDQou TE01Og0NCi5MQkUyOg0NCi8qIGVwaWxvZ3VlOiBmcmFtZSBzaXplPTAgKi8N DQoJcmptcCBleGl0DQ0KLyogZXBpbG9ndWUgZW5kIChzaXplPTEpICovDQ0K LyogZnVuY3Rpb24gbWFpbiBzaXplIDE3ICgxMikgKi8NDQoJLnNpemUJbWFp biwgLi1tYWluDQ0KCS5zdGFicwkiaTpyKDAsNCkiLDY0LDAsMiwxOA0NCgku c3RhYnMJImo6cigwLDQpIiw2NCwwLDIsMjQNDQoJLnN0YWJuCTE5MiwwLDAs LkxCQjItbWFpbg0NCgkuc3RhYm4JMjI0LDAsMCwuTEJFMi1tYWluDQ0KLkxz Y29wZTA6DQ0KCS5zdGFicwkiIiwzNiwwLDAsLkxzY29wZTAtbWFpbg0NCgku dGV4dA0NCgkuc3RhYnMgIiIsMTAwLDAsMCxMZXRleHQNDQpMZXRleHQ6DQ0K LyogRmlsZSAidGVzdDIuYyI6IGNvZGUgICAxNyA9IDB4MDAxMSAoICAxMiks IHByb2xvZ3VlcyAgIDQsIGVwaWxvZ3VlcyAgIDEgKi8NDQo= --1117258244-1711166521-1052470239=:25817--
next reply other threads:[~2003-05-09 8:56 UTC|newest] Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top 2003-05-09 8:56 Nagy Endre [this message] -- strict thread matches above, loose matches on Subject: below -- 2003-05-09 8:16 Dara Hazeghi 2003-05-04 14:26 gumo
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20030509085601.6871.qmail@sources.redhat.com \ --to=gumo@lucifer.kgt.bme.hu \ --cc=gcc-prs@gcc.gnu.org \ --cc=nobody@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).