From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 118114 invoked by alias); 19 Mar 2018 20:07:35 -0000 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 Received: (qmail 118093 invoked by uid 89); 19 Mar 2018 20:07:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy= X-HELO: homiemail-a122.g.dreamhost.com Received: from sub5.mail.dreamhost.com (HELO homiemail-a122.g.dreamhost.com) (208.113.200.129) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 19 Mar 2018 20:07:31 +0000 Received: from homiemail-a122.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a122.g.dreamhost.com (Postfix) with ESMTP id 3B18B60001103; Mon, 19 Mar 2018 13:07:29 -0700 (PDT) Received: from [192.168.20.41] (c-73-170-242-219.hsd1.ca.comcast.net [73.170.242.219]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: eager@eagerm.com) by homiemail-a122.g.dreamhost.com (Postfix) with ESMTPSA id 2DFC360001B04; Mon, 19 Mar 2018 13:07:24 -0700 (PDT) Subject: Re: [PATCH] [Microblaze]: PIC Data Text Relative To: Andrew Sadek Cc: gcc-patches@gcc.gnu.org References: <3ea62194-f081-0d2e-13f4-5884f1615e37@eagerm.com> <9bd79491-266d-5b3e-217c-62dbb8ae1d74@eagerm.com> <71c573a2-af37-9dfb-bbd1-b69bd2b56cbf@eagerm.com> <4515bb77-93e3-ead8-ab0b-7d23ca76adc3@eagerm.com> <076c5840-f9e2-320f-6f4c-658c986ef26d@eagerm.com> From: Michael Eager Message-ID: Date: Mon, 19 Mar 2018 20:09:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00899.txt.bz2 Hi Andrew -- Good work. Please submit your updated patch. Check that you follow GNU coding standards. Also make sure that the new options are documented in gcc/doc/invoke.texi. On 03/18/18 03:27, Andrew Sadek wrote: > Hello Michael, >=20 > I have run the test using the new PIC options. > Actually, I have discovered 2 unhandled cases in=20 > 'microblaze_expand_move' + missing conditions in linker relax > leading some test cases execution to fail. > After fixing them, I made a re-run for the whole regression, and the=20 > results analogy below: >=20 > Original, without my patch: > =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =3D=3D=3D gcc Summary =3D=3D=3D >=20 > # of expected passes=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 90776 > # of unexpected failures=C2=A0=C2=A0=C2=A0 1317 > # of unexpected successes=C2=A0=C2=A0=C2=A0 3 > # of expected failures=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 207 > # of unresolved testcases=C2=A0=C2=A0=C2=A0 115 > # of unsupported tests=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 2828 >=20 > With my patch, calling '-fPIE - mpic-data-text-rel' > =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =3D=3D=3D gcc Summary =3D=3D=3D >=20 > # of expected passes=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 90843 > # of unexpected failures=C2=A0=C2=A0=C2=A0 1256 > # of unexpected successes=C2=A0=C2=A0=C2=A0 3 > # of expected failures=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 207 > # of unresolved testcases=C2=A0=C2=A0=C2=A0 115 > # of unsupported tests=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 2853 >=20 > After running the 'dg-cmp-results.sh' in contrib folder, the PASS->FAIL=20 > are below: >=20 > PASS->FAIL: gcc.dg/uninit-19.c (test for excess errors) > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2 -flt= o=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2 -flt= o=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2 -flt= o=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2 -flt= o=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O0=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O1=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2 -fl= to=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O3 -g= =20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -Os=20= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O0=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O1=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O2 -flto=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O2 -flto=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O2=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -O3 -g=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2=A0 = -Os=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O0=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O1=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O2 -flto=20 > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assembler= =20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O2 -flto=20 > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler=20 > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O2=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -O3 -g=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2=A0 = -Os=20=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 >=20 > the 'gcc.dg/uninit-19.c ' already fails with -fPIE, and for the others=20 > in microblaze, > expectation is r0 or r13 as a base register which is not the case here=20 > 'r20', and these tests also fails with -fPIE. > Moreover, the test cases that failed due 'unresolved=20 > GLOBAL_OFFSET_TABLE' now pass as we do not have GOT in data text relative. >=20 > Please tell me if any adjustments needed or If I need to re-run nything. >=20 > Thanks >=20 > On Sun, Mar 18, 2018 at 12:25 PM, Andrew Sadek=20 > > wrote: >=20 > Hello Michael, >=20 > I have run the test using the new PIC options. > Actually, I have discovered 2 unhandled cases in > 'microblaze_expand_move' + missing conditions in linker relax > leading some test cases execution to fail. > After fixing them, I made a re-run for the whole regression, and the > results analogy below: >=20 > Original, without my patch: > =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =3D=3D=3D gcc Summary =3D=3D=3D >=20 > # of expected passes=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 90776 > # of unexpected failures=C2=A0=C2=A0=C2=A0 1317 > # of unexpected successes=C2=A0=C2=A0=C2=A0 3 > # of expected failures=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 207 > # of unresolved testcases=C2=A0=C2=A0=C2=A0 115 > # of unsupported tests=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 2828 >=20 > With my patch, calling '-fPIE - mpic-data-text-rel' > =C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 =3D=3D=3D gcc Summary =3D=3D=3D >=20 > # of expected passes=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 90843 > # of unexpected failures=C2=A0=C2=A0=C2=A0 1256 > # of unexpected successes=C2=A0=C2=A0=C2=A0 3 > # of expected failures=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 207 > # of unresolved testcases=C2=A0=C2=A0=C2=A0 115 > # of unsupported tests=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0 2853 >=20 > After running the 'dg-cmp-results.sh' in contrib folder, the > PASS->FAIL are below: >=20 > PASS->FAIL: gcc.dg/uninit-19.c (test for excess errors) > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2 = -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2 = -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -O3 = -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var1.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2 = -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2 = -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -O3 = -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/data_var2.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r0 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2= -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2= -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -O3= -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var1.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2= -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2= -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -O3= -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var2.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2= -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2= -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -O3= -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var4.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O0= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O1= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2= -flto > -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-assemb= ler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2= -flto > -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O2= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -O3= -g=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/sdata_var5.c=C2=A0=C2=A0 -Os= =20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O0=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O1=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O2 > -flto -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-= assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O2 > -flto -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assem= bler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O2=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -O3 > -g=C2=A0=C2=A0 scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst1_gpopt.c=C2=A0=C2= =A0 -Os=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O0=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O1=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O2 > -flto -fno-use-linker-plugin -flto-partition=3Dnone=C2=A0=C2=A0 scan-= assembler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O2 > -flto -fuse-linker-plugin -fno-fat-lto-objects=C2=A0=C2=A0 scan-assem= bler > lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O2=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -O3 > -g=C2=A0=C2=A0 scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 > PASS->FAIL: gcc.target/microblaze/others/string_cst2_gpopt.c=C2=A0=C2= =A0 -Os=20=20 > scan-assembler lwi\tr([0-9]|[1-2][0-9]|3[0-1]),r13 >=20 > the 'gcc.dg/uninit-19.c ' already fails with -fPIE, and for the > others in microblaze, > expectation is r0 or r13 as a base register which is not the case > here 'r20', and these tests also fails with -fPIE. > Moreover, the test cases that failed due 'unresolved > GLOBAL_OFFSET_TABLE' now pass as we do not have GOT in data text > relative. >=20 > Attached the compare output of the scripit with verbosity 2. > Please tell me if any adjustments needed or If I need to re-run nythi= ng. >=20 > Thanks >=20 >=20 > On Tue, Mar 13, 2018 at 10:44 PM, Michael Eager > wrote: >=20 > On 03/13/18 00:56, Andrew Sadek wrote: >=20 > Ok, so you mean with '-fPIC -mpic-data-text-relative' as I > do in my test case ? > If all is Ok, execution and compilation shall ideally pass > for the test cases. >=20 >=20 > Correct. >=20 > I want to make sure of two things: > =C2=A0 -- Your patch doesn't break anything (i.e., cause a > regression) when > =C2=A0 =C2=A0 =C2=A0you don't use the options.=C2=A0 This seems = complete. > =C2=A0 -- Your patch works as intended when you do use the optio= ns. >=20 > But I have noticed that there are some output pattern checks > done in some test cases and this may fail since the output > assembly is different, > anyway I shall give it a try and send you the results with > the new options. >=20 >=20 > There should be no target dependencies in the generic GCC tests. > Different instruction patterns which generate the correct > results should > not be a problem. >=20 >=20 > --=20 > Michael Eager eager@eagerm.com > 1960 Park Blvd., Palo Alto, CA 94306 >=20 >=20 >=20 >=20 > --=20 >=20 > Andrew >=20 >=20 >=20 >=20 > --=20 >=20 > Andrew --=20 Michael Eager eager@eagerm.com 1960 Park Blvd., Palo Alto, CA 94306