Skip to content

porting/libperl.t: handle nm output on Mac OS Ventura 13.4 #21120

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 3, 2023

Conversation

tonycoz
Copy link
Contributor

@tonycoz tonycoz commented May 24, 2023

Fixes #21117

@craigberry
Copy link
Contributor

This does get the test passing on Ventura. However, it creates a lot of extra output that looks like:

$ ./perl -I../lib porting/libperl.t
# $^O = darwin
# $Config{archname} = darwin-2level
# $Config{cc} = cc
# libperl = ../libperl.a
# nm = /usr/bin/nm
# nm_style = darwin
# nm_opt = -m
# command: "/usr/bin/nm -m ../libperl.a 2>libperl21428 |"
# Unknown type: 0000000000001df0 (__TEXT,__text) private external _Perl_alloc_LOGOP (op.o)
# Unknown type: 0000000000000aa0 (__TEXT,__text) private external _Perl_allocmy (op.o)
# Unknown type: 0000000000007540 (__TEXT,__text) private external _Perl_bind_match (op.o)
. . .

So I think it is not getting into the branch the skips various things. Not sure if that's new, and not necessarily a reason not to merge this, but I thought I'd pass it along.

 l_switch.table.S_set_regex_pv.3163
 l___const.S_pmtrans.PL_partition_by_byte_length  *
 l___const.S_my_localeconv.lconv_integers         *

and the [cold func] entries.

The symbols marked * above may indicate an optimisation opportunity,
such symbols reference initialisation data for auto constant data
structures within the function, which is initialised by copy on
each function entry.
@craigberry
Copy link
Contributor

I can confirm that on macOS Ventura the second commit clears up the extra chattiness I'd noted earlier.

@rjbs
Copy link
Member

rjbs commented Jun 11, 2023

Thanks. I'll probably leave v5.38.0 RC as is for now, but we should apply this (or something like it) to v5.39!

Also, maint-5.36…

@kcaran
Copy link

kcaran commented Jun 14, 2023

Hi. I just compiled v5.36.1 on my M2 Ventura 13.4 and got the same test failure. The patch fixed the issue without any noise. Thanks, Tony!

@tonycoz tonycoz merged commit 41f7ccf into Perl:blead Jul 3, 2023
@tonycoz
Copy link
Contributor Author

tonycoz commented Jul 3, 2023

Also, maint-5.36…

Added to the voting file.

@dkechag
Copy link

dkechag commented Jul 14, 2023

Was tackling this when I saw there's a patch, it works for my M1 Pro MacOS Ventura, would be nice to add to 5.36.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
7 participants
close