From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4622 invoked by alias); 1 Aug 2012 14:43:13 -0000 Received: (qmail 4552 invoked by uid 22791); 1 Aug 2012 14:43:09 -0000 X-SWARE-Spam-Status: No, hits=-3.6 required=5.0 tests=AWL,BAYES_00,KHOP_RCVD_UNTRUST,RCVD_IN_HOSTKARMA_W,RCVD_IN_HOSTKARMA_WL X-Spam-Check-By: sourceware.org Received: from relay1.mentorg.com (HELO relay1.mentorg.com) (192.94.38.131) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 01 Aug 2012 14:42:49 +0000 Received: from svr-orw-fem-01.mgc.mentorg.com ([147.34.98.93]) by relay1.mentorg.com with esmtp id 1Swa8N-0003BI-8V from Maciej_Rozycki@mentor.com ; Wed, 01 Aug 2012 07:42:47 -0700 Received: from SVR-IES-FEM-01.mgc.mentorg.com ([137.202.0.104]) by svr-orw-fem-01.mgc.mentorg.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.4675); Wed, 1 Aug 2012 07:42:47 -0700 Received: from [172.30.4.177] (137.202.0.76) by SVR-IES-FEM-01.mgc.mentorg.com (137.202.0.104) with Microsoft SMTP Server id 14.1.289.1; Wed, 1 Aug 2012 15:42:42 +0100 Date: Wed, 01 Aug 2012 14:43:00 -0000 From: "Maciej W. Rozycki" To: Richard Sandiford , Alan Modra CC: Subject: [PATCH] MIPS: Enable NewABI tests for SDE targets Message-ID: User-Agent: Alpine 1.10 (DEB 962 2008-03-14) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="8323328-512962158-1343832162=:20608" Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2012-08/txt/msg00017.txt.bz2 --8323328-512962158-1343832162=:20608 Content-Type: text/plain; charset="US-ASCII" Content-length: 4489 Hi, As easily observed in config.bfd SDE targets support NewABI these days as well and therefore need testing. The change below enables NewABI tests for GAS and LD. Regrettably this turned out not as straightforward as it would seem, especially for LD, as there is assumption about The NewABI Target being Linux made in a few places. The change therefore makes additional changes to make this assumption go away. As a side effect some IRIX failures have gone away. These additional changes required updates to the LD version of run_dump_test -- I carried over features added to the GAS version of same, specifically the optional EXTRA_OPTIONS argument and the "dump" keyword. Then mips-elf.exp makes use of these changes to abstract the handling of GAS and LD options across targets. In the course of developing these changes the "dump" keyword turned out unneeded, but I propose to keep it for consistency between the two implementations of run_dump_test, especially as it looks reasonable to use by targets whose maintainers prefer to bulk-run dump tests through a glob pattern -- that obviously precludes calling the same test with EXTRA_OPTIONS depending on configuration as I do here. The rest of the changes are the usual padding/alignment fixes as bare-iron MIPS targets align known sections to 4 while other MIPS targets use 8. I have regression-tested this using Alan's clever script (thanks, Alan!), although with more interesting MIPS targets added (these included mips-freebsd, mips64el-freebsd, mips-sgi-irix5 and mips-sgi-irix6 in particular as these use incompatible LD emulations). This produced no regressions and the following progressions: mips-sgi-irix6 -FAIL: MIPS ELF got reloc n32 mips-sgi-irix6 -FAIL: MIPS ELF xgot reloc n32 mips-sgi-irix6 -FAIL: MIPS ELF got reloc n64 mips-sgi-irix6 -FAIL: MIPS ELF xgot reloc n64 mips-sgi-irix6 -ERROR: -mips32r2 .../ld/testsuite/ld-mips-elf/mips16-call-global-1.s: assembly failed mips-sgi-irix6 -ERROR: -mips32r2 .../ld/testsuite/ld-mips-elf/mips16-intermix-1.s: assembly failed Alan, while at it -- may I suggest that you add UNRESOLVED to the list of test results watched? According to DejaGNU/POSIX test suite standard documentation that test result means there is a problem with the test case itself and such should not be missed. I've seen it happen where an exception was thrown by the TCL interpreter for example because a reference to an uninitialised variable was made and the appearance (or removal) of such problems should be highlighted when regression testing. I have such change applied to my copy of your script already. 2012-08-01 Maciej W. Rozycki gas/testsuite/ * gas/mips/mips.exp: Set has_newabi for mips*-sde-elf* too. * gas/mips/elf-rel-got-n32.s: Adjust padding. * gas/mips/elf-rel-got-n64.s: Likewise. * gas/mips/elf-rel23.s: Likewise. * gas/mips/elf-rel28.s: Likewise. * gas/mips/n32-consec.s: Likewise. * gas/mips/elf-rel-xgot-n32.d: Adjust output expected. * gas/mips/elf-rel-xgot-n64.d: Likewise. * gas/mips/elf-rel23.d: Likewise. * gas/mips/elf-rel23a.d: Likewise. * gas/mips/elf-rel23b.d: Likewise. * gas/mips/elf-rel28-n32.d: Likewise. ld/testsuite/ * ld-mips-elf/emit-relocs-1a.s: Make section alignment uniform across targets. * ld-mips-elf/emit-relocs-1b.s: Likewise. * ld-mips-elf/jalbal.s: Adjust padding. * ld-mips-elf/elf-rel-got-n32-embed.d: New test. * ld-mips-elf/elf-rel-got-n64-embed.d: New test. * ld-mips-elf/elf-rel-xgot-n32-embed.d: New test. * ld-mips-elf/elf-rel-xgot-n64-embed.d: New test. * ld-mips-elf/elf-rel-got-n32.d: Remove -melf32btsmipn32. * ld-mips-elf/elf-rel-got-n64.d: Remove -melf64btsmip. Adjust output. * ld-mips-elf/elf-rel-got-n64-linux.d: Remove -melf64btsmip. * ld-mips-elf/elf-rel-xgot-n32.d: Remove -melf32btsmipn32. Adjust output. * ld-mips-elf/elf-rel-xgot-n64.d: Remove -melf64btsmip. Adjust output. * ld-mips-elf/elf-rel-xgot-n64-linux.d: Likewise. * ld-mips-elf/reloc-1-n64.d: Remove -melf64btsmip. * ld-mips-elf/mips-elf.exp: Set has_newabi for mips*-sde-elf* too. Move tool flags from o32_as_flags and o32_ld_flags variables into abi_asflags and abi_ldflags arrays. Adjust test cases run to use them. Run the new tests. * lib/ld-lib.exp (run_dump_test): Implement the EXTRA_OPTIONS argument and the "dump" keyword. OK to apply? Maciej binutils-mips-sde-test-newabi.diff [Attached compressed due to its size.] --8323328-512962158-1343832162=:20608 Content-Type: application/octet-stream; name="binutils-mips-sde-test-newabi.diff.bz2" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="binutils-mips-sde-test-newabi.diff.bz2" Content-length: 22770 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 fFfN2llWcRarMZGe3l55eni8fDr4fg23XAXbRa6+EAFQry+fzlpunm7ze+oL mhDTuxRY/GsHDjlysbjrtb6c3ebvDkqziLVZlnINFTRqIgeuIqVcWWtV1Z91 arqzlarqzGnGcbxV1YRDdg0llshxNYVVZytLBKrOKrJRlQVRZ/EjiHJMevFs naGIq6jItWx1BqaxLImLBdsaSDiaC6+kF46i6zdeo2PvXUVXq7zYsaazqu2Q r2dri4s0jIpxjqsyzkwqw2yYSSNZI8iUx0dGvkvnXva+9NpYfk8nvJKJl2HB E3Z41lr7ryrpVSuqxgkkJCRVlWOPI3nG81s3jGNjG+25I1O3FCNySdyTpsSE ulfvPvD7hnjTpeI3PEnt12CyDIBIPLhxqPVGgtoBwCCwIpMs4J2HkH3f2gvG 4JoBoEFgRSaWTnqJXpm57w3EZGbJQxqp0o9+mZZ22r2l6N5sOdFjhD046bX+ SurP8bOzp/86Pojxr99dcJaO+/O98aiqAP3qHk3Q/SSivx9pa0PvMFvXexEw XcpU2y0+WdLiaaa/mrVE10ktXhapRn7RNk4tXhReF2u00014Wrx4erwkulsT 4pbrdi55Ne9deX58Z0vN3vt9nJ09yc02a9VGVGria/urwu12mmmvC4pW1F2j peFONLV6rcRjk02dPWd4Sb4bOE7TWC5KyYsrTJpkqzAhD+CFoxHsbRU92bRi Pc00NDQ9sMDDyfeX+PnXb8b/G/buSSSTr0mmmhttPx3PD8OHgAAQkQThYdoA QEBhygYcPAAfhi4wAfuQAKeWVZZZZXyyQ1FjAG7TGhsEYRhCNhpKsqxNJGMd NGxZXlN2l0xWmo3LK3m7S6azqTgmxOUkSJ4n4itbXraGllaa2VNtKWpVm0JY D0I5GoodVZMwyOqabnWWaKKGgpoprAYGEcNFMYU4XARjeMmMdRg3kWCxIssU skFiJVRKopTkSQ9BNhgbOazkOJqRpo0TUiTURtGGRzYbpuO80mfGkxCzhzId nMgsR0EJODA3AemSIwjEppzCR5hI9TvYC2DgTDbeOSWKchtppvjbStxHIRxA fAkkCfpR+uT9Cqtq1VttmAAmSEAhkEJCBIBDMJJISSQCZJTAJJMwIBMgkAmR CAQiYSEhIBJDMIBJJIEkiZMwkzJIEkMySASJEIEkgmEgCUiQJmTMMgyTIEAz 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 //F3JFOFCQ5ke2Cg --8323328-512962158-1343832162=:20608--