From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25736 invoked by alias); 9 Jul 2004 09:43:43 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 25729 invoked from network); 9 Jul 2004 09:43:42 -0000 Received: from unknown (HELO main.gmane.org) (80.91.224.249) by sourceware.org with SMTP; 9 Jul 2004 09:43:42 -0000 Received: from list by main.gmane.org with local (Exim 3.35 #1 (Debian)) id 1Biruw-0007kC-00 for ; Fri, 09 Jul 2004 11:43:42 +0200 Received: from paride.rett.polimi.it ([131.175.65.135]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 09 Jul 2004 11:43:42 +0200 Received: from bonzini by paride.rett.polimi.it with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 09 Jul 2004 11:43:42 +0200 To: gcc-patches@gcc.gnu.org From: Paolo Bonzini Subject: Re: [RFT/RFA] gimplify pa va_arg Date: Fri, 09 Jul 2004 10:08:00 -0000 Message-ID: <40EE69B5.8090909@gnu.org> References: <20040708195110.GC20150@redhat.com> <40EE4596.1090008@polimi.it> <40EE6551.6090603@polimi.it> <40EE6589.8000506@polimi.it> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------060601010601050105040401" X-Complaints-To: usenet@sea.gmane.org Cc: Richard Henderson , gcc-patches@gcc.gnu.org X-Gmane-NNTP-Posting-Host: paride.rett.polimi.it User-Agent: Mozilla Thunderbird 0.5 (Windows/20040207) In-Reply-To: <40EE6589.8000506@polimi.it> X-SW-Source: 2004-07/txt/msg00918.txt.bz2 This is a multi-part message in MIME format. --------------060601010601050105040401 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 88 >> I attach two sdiffs to help review. And I forgot the sdiffs as well. Sorry. Paolo --------------060601010601050105040401 Content-Type: text/plain; name="pa64-diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="pa64-diff" Content-length: 3341 .LEVEL 2.0w .LEVEL 2.0w .text .text .align 4 .align 4 .align 8 .align 8 .globl f1 .globl f1 .type f1, @function .type f1, @function f1: f1: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < ldw 4(%r21),%r28 ldw 4(%r21),%r28 > std %r19,0(%r20) bve (%r2) bve (%r2) extrd,s %r28,63,32,%r28 extrd,s %r28,63,32,%r28 .EXIT .EXIT .PROCEND .PROCEND .size f1, .-f1 .size f1, .-f1 .align 8 .align 8 .globl f2 .globl f2 .type f2, @function .type f2, @function f2: f2: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < bve (%r2) < ldd 0(%r21),%r28 ldd 0(%r21),%r28 > bve (%r2) > std %r19,0(%r20) .EXIT .EXIT .PROCEND .PROCEND .size f2, .-f2 .size f2, .-f2 .align 8 .align 8 .globl f3 .globl f3 .type f3, @function .type f3, @function f3: f3: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < bve (%r2) < fldd 0(%r21),%fr4 fldd 0(%r21),%fr4 > bve (%r2) > std %r19,0(%r20) .EXIT .EXIT .PROCEND .PROCEND .size f3, .-f3 .size f3, .-f3 > .globl memmove .align 8 .align 8 .globl f4 .globl f4 .type f4, @function .type f4, @function f4: f4: .PROC .PROC .CALLINFO FRAME=128,CALLS,SAV .CALLINFO FRAME=128,CALLS,SAV .ENTRY .ENTRY std %r2,-16(%r30) std %r2,-16(%r30) addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r21 | ldd RT'list(%r1),%r20 copy %r28,%r26 copy %r28,%r26 std,ma %r5,128(%r30) std,ma %r5,128(%r30) ldi 400,%r24 ldi 400,%r24 copy %r28,%r5 copy %r28,%r5 std %r4,-120(%r30) std %r4,-120(%r30) ldd 0(%r21),%r19 | ldd 0(%r20),%r19 ldo 15(%r19),%r19 ldo 15(%r19),%r19 depdi 0,63,4,%r19 depdi 0,63,4,%r19 std %r19,0(%r21) | copy %r19,%r25 ldd 0(%r21),%r20 < ldo 15(%r20),%r20 < ldo -48(%r30),%r29 < std %r20,0(%r21) < ldd 0(%r21),%r19 < depdi 0,63,4,%r19 < std %r19,0(%r21) < ldd 0(%r21),%r25 < ldd 0(%r21),%r19 < ldo 400(%r19),%r19 ldo 400(%r19),%r19 std %r19,0(%r21) | ldo -48(%r30),%r29 b,l memcpy,%r2 | b,l memmove,%r2 nop | std %r19,0(%r20) ldd -144(%r30),%r2 ldd -144(%r30),%r2 ldd -120(%r30),%r4 ldd -120(%r30),%r4 copy %r5,%r28 copy %r5,%r28 bve (%r2) bve (%r2) ldd,mb -128(%r30),%r5 ldd,mb -128(%r30),%r5 .EXIT .EXIT .PROCEND .PROCEND .size f4, .-f4 .size f4, .-f4 .comm list,8,8 .comm list,8,8 .ident "GCC: (GNU) 3.5.0 200 .ident "GCC: (GNU) 3.5.0 200 --------------060601010601050105040401 Content-Type: text/plain; name="pa-diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="pa-diff" Content-length: 3406 .LEVEL 1.1 .LEVEL 1.1 .text .text .align 4 .align 4 .align 4 .align 4 .globl f1 .globl f1 .type f1, @function .type f1, @function f1: f1: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -4(%r19),%r19 ldo -4(%r19),%r19 depi 0,31,2,%r19 depi 0,31,2,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 < bv %r0(%r2) bv %r0(%r2) ldw 0(%r20),%r28 | ldw 0(%r19),%r28 .EXIT .EXIT .PROCEND .PROCEND .size f1, .-f1 .size f1, .-f1 .align 4 .align 4 .globl f2 .globl f2 .type f2, @function .type f2, @function f2: f2: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -8(%r19),%r19 ldo -8(%r19),%r19 depi 0,31,3,%r19 depi 0,31,3,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 | ldw 0(%r19),%r28 ldw 0(%r20),%r28 | ldw 4(%r19),%r29 ldw 4(%r20),%r29 < bv,n %r0(%r2) bv,n %r0(%r2) .EXIT .EXIT .PROCEND .PROCEND .size f2, .-f2 .size f2, .-f2 .align 4 .align 4 .globl f3 .globl f3 .type f3, @function .type f3, @function f3: f3: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -8(%r19),%r19 ldo -8(%r19),%r19 depi 0,31,3,%r19 depi 0,31,3,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 < bv %r0(%r2) bv %r0(%r2) fldds 0(%r20),%fr4 | fldds 0(%r19),%fr4 .EXIT .EXIT .PROCEND .PROCEND .size f3, .-f3 .size f3, .-f3 > .globl memmove .align 4 .align 4 .globl f4 .globl f4 .type f4, @function .type f4, @function f4: f4: .PROC .PROC .CALLINFO FRAME=64,CALLS,SAVE_RP,ENTRY_GR=3 | .CALLINFO FRAME=128,CALLS,SAVE_RP,ENTRY_GR=3 .ENTRY .ENTRY stw %r2,-20(%r30) stw %r2,-20(%r30) addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 copy %r28,%r26 copy %r28,%r26 stwm %r4,64(%r30) | stwm %r4,128(%r30) ldi 400,%r24 ldi 400,%r24 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 > ldw -4(%r19),%r25 ldo -4(%r19),%r19 ldo -4(%r19),%r19 copy %r28,%r4 < stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 | bl memmove,%r2 bl memcpy,%r2 | copy %r28,%r4 ldw 0(%r20),%r25 | ldw -148(%r30),%r2 ldw -84(%r30),%r2 < copy %r4,%r28 copy %r4,%r28 bv %r0(%r2) bv %r0(%r2) ldwm -64(%r30),%r4 | ldwm -128(%r30),%r4 .EXIT .EXIT .PROCEND .PROCEND .size f4, .-f4 .size f4, .-f4 .comm list,4,4 .comm list,4,4 .ident "GCC: (GNU) 3.5.0 20040709 (experimental .ident "GCC: (GNU) 3.5.0 20040709 (experimental --------------060601010601050105040401-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26149 invoked by alias); 9 Jul 2004 09:43:51 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 26117 invoked from network); 9 Jul 2004 09:43:48 -0000 Received: from unknown (HELO mail.polimi.it) (131.175.12.67) by sourceware.org with SMTP; 9 Jul 2004 09:43:48 -0000 Received: from gnu.org (paride.rett.polimi.it [131.175.65.135]) (authenticated bits=0) by mail.polimi.it (Switch-3.0.5/Switch-3.0.0) with ESMTP id i699hepT000589; Fri, 9 Jul 2004 11:43:41 +0200 (MEST) Message-ID: <40EE69B5.8090909@gnu.org> Date: Fri, 09 Jul 2004 10:13:00 -0000 From: Paolo Bonzini User-Agent: Mozilla Thunderbird 0.5 (Windows/20040207) MIME-Version: 1.0 Newsgroups: gmane.comp.gcc.patches To: Paolo Bonzini CC: Richard Henderson , gcc-patches@gcc.gnu.org Subject: Re: [RFT/RFA] gimplify pa va_arg References: <20040708195110.GC20150@redhat.com> <40EE4596.1090008@polimi.it> <40EE6551.6090603@polimi.it> <40EE6589.8000506@polimi.it> In-Reply-To: <40EE6589.8000506@polimi.it> Content-Type: multipart/mixed; boundary="------------060601010601050105040401" X-PMX-Version: 4.6.0.99824, Antispam-Core: 4.6.1.104326, Antispam-Data: 2004.7.8.106480 X-PerlMx-Spam: Gauge=%%XPROB%%IIIIIII, Probability=7%, Report='__MOZILLA_MSGID 0, __HAS_MSGID 0, __SANE_MSGID 0, __USER_AGENT 0, X_ACCEPT_LANG 0, __MIME_VERSION 0, __TO_MALFORMED_2 0, __REFERENCES 0, __IN_REP_TO 0, __CT 0, __CTYPE_HAS_BOUNDARY 0, __CTYPE_MULTIPART 0, __BAT_BOUNDARY 0, __UNUSABLE_MSGID 0, __MIME_TEXT_ONLY 0, REFERENCES 0.000, IN_REP_TO 0, USER_AGENT 0.000' X-SW-Source: 2004-07/txt/msg00920.txt.bz2 Message-ID: <20040709101300.-tFNYK6nLCvLcrPMUcQDxULaF9tPit6Z2faGUAGRvro@z> This is a multi-part message in MIME format. --------------060601010601050105040401 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-length: 88 >> I attach two sdiffs to help review. And I forgot the sdiffs as well. Sorry. Paolo --------------060601010601050105040401 Content-Type: text/plain; name="pa64-diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="pa64-diff" Content-length: 3341 .LEVEL 2.0w .LEVEL 2.0w .text .text .align 4 .align 4 .align 8 .align 8 .globl f1 .globl f1 .type f1, @function .type f1, @function f1: f1: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < ldw 4(%r21),%r28 ldw 4(%r21),%r28 > std %r19,0(%r20) bve (%r2) bve (%r2) extrd,s %r28,63,32,%r28 extrd,s %r28,63,32,%r28 .EXIT .EXIT .PROCEND .PROCEND .size f1, .-f1 .size f1, .-f1 .align 8 .align 8 .globl f2 .globl f2 .type f2, @function .type f2, @function f2: f2: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < bve (%r2) < ldd 0(%r21),%r28 ldd 0(%r21),%r28 > bve (%r2) > std %r19,0(%r20) .EXIT .EXIT .PROCEND .PROCEND .size f2, .-f2 .size f2, .-f2 .align 8 .align 8 .globl f3 .globl f3 .type f3, @function .type f3, @function f3: f3: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r20 ldd RT'list(%r1),%r20 ldd 0(%r20),%r21 ldd 0(%r20),%r21 ldd 0(%r20),%r19 | ldo 8(%r21),%r19 ldo 8(%r19),%r19 < std %r19,0(%r20) < bve (%r2) < fldd 0(%r21),%fr4 fldd 0(%r21),%fr4 > bve (%r2) > std %r19,0(%r20) .EXIT .EXIT .PROCEND .PROCEND .size f3, .-f3 .size f3, .-f3 > .globl memmove .align 8 .align 8 .globl f4 .globl f4 .type f4, @function .type f4, @function f4: f4: .PROC .PROC .CALLINFO FRAME=128,CALLS,SAV .CALLINFO FRAME=128,CALLS,SAV .ENTRY .ENTRY std %r2,-16(%r30) std %r2,-16(%r30) addil LT'list,%r27 addil LT'list,%r27 ldd RT'list(%r1),%r21 | ldd RT'list(%r1),%r20 copy %r28,%r26 copy %r28,%r26 std,ma %r5,128(%r30) std,ma %r5,128(%r30) ldi 400,%r24 ldi 400,%r24 copy %r28,%r5 copy %r28,%r5 std %r4,-120(%r30) std %r4,-120(%r30) ldd 0(%r21),%r19 | ldd 0(%r20),%r19 ldo 15(%r19),%r19 ldo 15(%r19),%r19 depdi 0,63,4,%r19 depdi 0,63,4,%r19 std %r19,0(%r21) | copy %r19,%r25 ldd 0(%r21),%r20 < ldo 15(%r20),%r20 < ldo -48(%r30),%r29 < std %r20,0(%r21) < ldd 0(%r21),%r19 < depdi 0,63,4,%r19 < std %r19,0(%r21) < ldd 0(%r21),%r25 < ldd 0(%r21),%r19 < ldo 400(%r19),%r19 ldo 400(%r19),%r19 std %r19,0(%r21) | ldo -48(%r30),%r29 b,l memcpy,%r2 | b,l memmove,%r2 nop | std %r19,0(%r20) ldd -144(%r30),%r2 ldd -144(%r30),%r2 ldd -120(%r30),%r4 ldd -120(%r30),%r4 copy %r5,%r28 copy %r5,%r28 bve (%r2) bve (%r2) ldd,mb -128(%r30),%r5 ldd,mb -128(%r30),%r5 .EXIT .EXIT .PROCEND .PROCEND .size f4, .-f4 .size f4, .-f4 .comm list,8,8 .comm list,8,8 .ident "GCC: (GNU) 3.5.0 200 .ident "GCC: (GNU) 3.5.0 200 --------------060601010601050105040401 Content-Type: text/plain; name="pa-diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="pa-diff" Content-length: 3406 .LEVEL 1.1 .LEVEL 1.1 .text .text .align 4 .align 4 .align 4 .align 4 .globl f1 .globl f1 .type f1, @function .type f1, @function f1: f1: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -4(%r19),%r19 ldo -4(%r19),%r19 depi 0,31,2,%r19 depi 0,31,2,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 < bv %r0(%r2) bv %r0(%r2) ldw 0(%r20),%r28 | ldw 0(%r19),%r28 .EXIT .EXIT .PROCEND .PROCEND .size f1, .-f1 .size f1, .-f1 .align 4 .align 4 .globl f2 .globl f2 .type f2, @function .type f2, @function f2: f2: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -8(%r19),%r19 ldo -8(%r19),%r19 depi 0,31,3,%r19 depi 0,31,3,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 | ldw 0(%r19),%r28 ldw 0(%r20),%r28 | ldw 4(%r19),%r29 ldw 4(%r20),%r29 < bv,n %r0(%r2) bv,n %r0(%r2) .EXIT .EXIT .PROCEND .PROCEND .size f2, .-f2 .size f2, .-f2 .align 4 .align 4 .globl f3 .globl f3 .type f3, @function .type f3, @function f3: f3: .PROC .PROC .CALLINFO FRAME=0,NO_CALLS .CALLINFO FRAME=0,NO_CALLS .ENTRY .ENTRY addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 ldo -8(%r19),%r19 ldo -8(%r19),%r19 depi 0,31,3,%r19 depi 0,31,3,%r19 stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 < bv %r0(%r2) bv %r0(%r2) fldds 0(%r20),%fr4 | fldds 0(%r19),%fr4 .EXIT .EXIT .PROCEND .PROCEND .size f3, .-f3 .size f3, .-f3 > .globl memmove .align 4 .align 4 .globl f4 .globl f4 .type f4, @function .type f4, @function f4: f4: .PROC .PROC .CALLINFO FRAME=64,CALLS,SAVE_RP,ENTRY_GR=3 | .CALLINFO FRAME=128,CALLS,SAVE_RP,ENTRY_GR=3 .ENTRY .ENTRY stw %r2,-20(%r30) stw %r2,-20(%r30) addil LR'list-$global$,%r27 addil LR'list-$global$,%r27 copy %r28,%r26 copy %r28,%r26 stwm %r4,64(%r30) | stwm %r4,128(%r30) ldi 400,%r24 ldi 400,%r24 ldw RR'list-$global$(%r1),%r19 ldw RR'list-$global$(%r1),%r19 > ldw -4(%r19),%r25 ldo -4(%r19),%r19 ldo -4(%r19),%r19 copy %r28,%r4 < stw %r19,RR'list-$global$(%r1) stw %r19,RR'list-$global$(%r1) ldw RR'list-$global$(%r1),%r20 | bl memmove,%r2 bl memcpy,%r2 | copy %r28,%r4 ldw 0(%r20),%r25 | ldw -148(%r30),%r2 ldw -84(%r30),%r2 < copy %r4,%r28 copy %r4,%r28 bv %r0(%r2) bv %r0(%r2) ldwm -64(%r30),%r4 | ldwm -128(%r30),%r4 .EXIT .EXIT .PROCEND .PROCEND .size f4, .-f4 .size f4, .-f4 .comm list,4,4 .comm list,4,4 .ident "GCC: (GNU) 3.5.0 20040709 (experimental .ident "GCC: (GNU) 3.5.0 20040709 (experimental --------------060601010601050105040401--