From 4f67cda8715f31107147e27346e10aacb8871697 Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Fri, 26 Jul 2019 18:58:02 +0000 Subject: [PATCH] [Darwin, testsuite] Handle Darwin's size command. Darwin's "size" command has a different header line, reflecting the Mach-O section naming conventions. This causes tests using the command to fail because scanasm.exp expects and checks specific layout of the header line. gcc/testsuite/ 2019-07-26 Iain Sandoe * lib/scanasm.exp (object-size): Handle Darwin's size command. From-SVN: r273839 --- gcc/testsuite/ChangeLog | 6 +++++- gcc/testsuite/lib/scanasm.exp | 12 ++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f899b5bb0aa..5bdbabb895f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,4 +1,8 @@ -2018-07-24 Tamar Christina +2019-07-26 Iain Sandoe + + * lib/scanasm.exp (object-size): Handle Darwin's size command. + +2018-07-26 Tamar Christina * gcc.dg/type-convert-var.c: New test. diff --git a/gcc/testsuite/lib/scanasm.exp b/gcc/testsuite/lib/scanasm.exp index 35ccbc86fc0..231a4d66bad 100644 --- a/gcc/testsuite/lib/scanasm.exp +++ b/gcc/testsuite/lib/scanasm.exp @@ -460,15 +460,23 @@ proc object-size { args } { set text [lindex $output 1] set lines [split $text "\n"] + set l0match {^\s*text\s+data\s+bss\s+dec\s+hex\s+filename\s*$} + set l1match {^\s*\d+\s+\d+\s+\d+\s+\d+\s+[\da-fA-F]+\s+} + + if { [istarget *-*-darwin*] } { + set l0match {^\s*__TEXT\s+__DATA\s+__OBJC\s+others\s+dec\s+hex\s*$} + set l1match {^\s*\d+\s+\d+\s+\d+\s+\d+\s+\d+\s+[\da-fA-F]+\s+} + } + set line0 [lindex $lines 0] - if ![regexp {^\s*text\s+data\s+bss\s+dec\s+hex\s+filename\s*$} $line0] { + if ![regexp $l0match $line0] { verbose -log "$testcase object-size: $size did not produce expected first line: $line0" unresolved "$testcase object-size $what $cmp $with" return } set line1 [lindex $lines 1] - if ![regexp {^\s*\d+\s+\d+\s+\d+\s+\d+\s+[\da-fA-F]+\s+} $line1] { + if ![regexp $l1match $line1] { verbose -log "$testcase object-size: $size did not produce expected second line: $line1" unresolved "$testcase object-size $what $cmp $with" return -- 2.30.2