public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
From: "Potharla, Rupesh" <Rupesh.Potharla@amd.com>
To: "Potharla, Rupesh via Binutils" <binutils@sourceware.org>,
	Nick Clifton <nickc@redhat.com>
Cc: "George, Jini Susan" <JiniSusan.George@amd.com>,
	"Parasuraman, Hariharan" <Hariharan.Parasuraman@amd.com>,
	"Kumar N, Bhuvanendra" <Bhuvanendra.KumarN@amd.com>
Subject: Subject: [PATCH]  Binutils: Readelf testcase failing with clang
Date: Wed, 14 Sep 2022 06:45:14 +0000	[thread overview]
Message-ID: <DM6PR12MB42197EF2441BB843090C68CCE7469@DM6PR12MB4219.namprd12.prod.outlook.com> (raw)


[-- Attachment #1.1: Type: text/plain, Size: 2201 bytes --]

[Public]


Hi,

Can you review the code changes and send in your comments or suggestions?



Patch Inlined:

---------------
The latest clang is emitting strx forms for strings earlier it was
emitting strp form. Due to this change, the readelf test case is failing,
fixing the regular expression in the test case fixes the issue. Similar
behavior is seen with addresses and fixed that as well.

Latest clang
------------
[1] DW_TAG_compile_unit DW_CHILDREN_yes
        DW_AT_producer  DW_FORM_strx1
        DW_AT_language  DW_FORM_data2

<0><c>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <d>   DW_AT_producer    : (indexed string: 0x0): AMD clang version 15.0.0
    <e>   DW_AT_language    : 12        (ANSI C99)
    <10>   DW_AT_name        : (indexed string: 0x1): testprog.c

Old clang and Gcc
-----------------
[1] DW_TAG_variable     DW_CHILDREN_no
         DW_AT_name      DW_FORM_strp

<0><c>: Abbrev Number: 5 (DW_TAG_compile_unit)
    <d>   DW_AT_producer    : (indirect string, offset: 0x18): GNU C17 12.0.0 20211122
    <11>   DW_AT_language    : 29       (C11)
---
binutils/testsuite/binutils-all/readelf.exp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/binutils/testsuite/binutils-all/readelf.exp b/binutils/testsuite/binutils-all/readelf.exp
index 0f7a1f3b5a0..23cefab41a4 100644
--- a/binutils/testsuite/binutils-all/readelf.exp
+++ b/binutils/testsuite/binutils-all/readelf.exp
@@ -188,12 +188,12 @@ proc readelf_wi_test {} {
     ".*DW_TAG_compile_unit.*"
     ".*DW_TAG_subprogram.*"
     ".*DW_TAG_base_type.*"
-     ".*DW_AT_producer.*(GNU C|indirect string).*"
+     ".*DW_AT_producer.*(GNU C|indirect string|indexed string).*"
     ".*DW_AT_language.*(ANSI C|C11).*"
-     ".*DW_AT_name.*(testprog.c|indirect string).*"
+     ".*DW_AT_name.*(testprog.c|indirect string|indexed string).*"
     ".*DW_AT_name.*fn.*"
-     ".*DW_AT_name.*(main|indirect string).*"
-     ".*\(DW_OP_addr: 0\).*"
+     ".*DW_AT_name.*(main|indirect string|indexed string).*"
+     ".*(DW_OP_addr: 0|DW_OP_addrx <0>).*"
     }

     # The MSP430 in LARGE mode does not generate a DW_OP_addr.
--
2.25.1




[-- Attachment #2: 0001-Binutils-Readelf-testcase-failing-with-clang.patch --]
[-- Type: application/octet-stream, Size: 2168 bytes --]

From 31a0ab4d145fd6bcf5391a739b401efabb4c437f Mon Sep 17 00:00:00 2001
From: rupothar <rupesh.potharla@amd.com>
Date: Wed, 7 Sep 2022 12:07:09 +0530
Subject: [PATCH]  Binutils: Readelf testcase failing with clang

 The latest clang is emitting strx forms for strings earlier it was
 emitting strp form. Due to this change, the readelf test case is failing,
 fixing the regular expression in the test case fixes the issue. Similar
 behavior is seen with addresses.

 Latest clang
 ------------
 [1] DW_TAG_compile_unit DW_CHILDREN_yes
        DW_AT_producer  DW_FORM_strx1
        DW_AT_language  DW_FORM_data2

 <0><c>: Abbrev Number: 1 (DW_TAG_compile_unit)
    <d>   DW_AT_producer    : (indexed string: 0x0): AMD clang version 15.0.0
    <e>   DW_AT_language    : 12        (ANSI C99)
    <10>   DW_AT_name        : (indexed string: 0x1): testprog.c

 Old clang and Gcc
 -----------------
 [1] DW_TAG_variable     DW_CHILDREN_no
         DW_AT_name      DW_FORM_strp

 <0><c>: Abbrev Number: 5 (DW_TAG_compile_unit)
    <d>   DW_AT_producer    : (indirect string, offset: 0x18): GNU C17 12.0.0 20211122
    <11>   DW_AT_language    : 29       (C11)
---
 binutils/testsuite/binutils-all/readelf.exp | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/binutils/testsuite/binutils-all/readelf.exp b/binutils/testsuite/binutils-all/readelf.exp
index 0f7a1f3b5a0..23cefab41a4 100644
--- a/binutils/testsuite/binutils-all/readelf.exp
+++ b/binutils/testsuite/binutils-all/readelf.exp
@@ -188,12 +188,12 @@ proc readelf_wi_test {} {
 	".*DW_TAG_compile_unit.*"
 	".*DW_TAG_subprogram.*"
 	".*DW_TAG_base_type.*"
-	".*DW_AT_producer.*(GNU C|indirect string).*"
+	".*DW_AT_producer.*(GNU C|indirect string|indexed string).*"
 	".*DW_AT_language.*(ANSI C|C11).*"
-	".*DW_AT_name.*(testprog.c|indirect string).*"
+	".*DW_AT_name.*(testprog.c|indirect string|indexed string).*"
 	".*DW_AT_name.*fn.*"
-	".*DW_AT_name.*(main|indirect string).*"
-	".*\(DW_OP_addr: 0\).*"
+	".*DW_AT_name.*(main|indirect string|indexed string).*"
+	".*(DW_OP_addr: 0|DW_OP_addrx <0>).*"
     }
 
     # The MSP430 in LARGE mode does not generate a DW_OP_addr.
-- 
2.25.1


             reply	other threads:[~2022-09-14  6:45 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-14  6:45 Potharla, Rupesh [this message]
2022-09-14  6:55 ` Jan Beulich
2022-09-14  7:24   ` Potharla, Rupesh
2022-09-14  9:28 ` Nick Clifton
2022-09-14  9:32   ` Potharla, Rupesh

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=DM6PR12MB42197EF2441BB843090C68CCE7469@DM6PR12MB4219.namprd12.prod.outlook.com \
    --to=rupesh.potharla@amd.com \
    --cc=Bhuvanendra.KumarN@amd.com \
    --cc=Hariharan.Parasuraman@amd.com \
    --cc=JiniSusan.George@amd.com \
    --cc=binutils@sourceware.org \
    --cc=nickc@redhat.com \
    /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: link
Be 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).