This is an archive of the discontinued LLVM Phabricator instance.

[LLD][MinGW] Accept joined format for --stack
ClosedPublic

Authored by mati865 on Aug 1 2021, 4:47 AM.

Details

Summary

Postgresql uses --stack= in it's Makefile.

Downstream issue: https://github.com/msys2/MINGW-packages/pull/9167

Diff Detail

Event Timeline

mati865 created this revision.Aug 1 2021, 4:47 AM
mati865 requested review of this revision.Aug 1 2021, 4:47 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 1 2021, 4:47 AM

LGTM, thanks!

From a quick look at the options listing, I presume most other cases of S<> and J<…=> should be changed into Eq<> too.

mstorsjo accepted this revision.Aug 1 2021, 6:56 AM

(Marking as approved too.)

This revision is now accepted and ready to land.Aug 1 2021, 6:56 AM

From a quick look at the options listing, I presume most other cases of S<> and J<…=> should be changed into Eq<> too.

It's very likely but I don't know how to easily check it with BFD and I think this was the only problematic flag recently.

From a quick look at the options listing, I presume most other cases of S<> and J<…=> should be changed into Eq<> too.

It's very likely but I don't know how to easily check it with BFD and I think this was the only problematic flag recently.

lld: error: unknown argument: --image-base=0x10000000 ?

From a quick look at the options listing, I presume most other cases of S<> and J<…=> should be changed into Eq<> too.

It's very likely but I don't know how to easily check it with BFD and I think this was the only problematic flag recently.

lld: error: unknown argument: --image-base=0x10000000 ?

Yes, that shows that lld doesn't support that form of that option - the question is whether ld.bfd supports that form of that particular option (I would assume it does as it uses getopt iirc).

Other than those two, there's also --major-image-version/--minor-image-version (which lld currently just ignores), and -mllvm (which only has correspondence in the lld ELF backend, where it supports both option forms), and --icf (which only is supported in the --icf=<foo> form currently. Additionally the option definitions of plugin and plugin-opt could be simplified.

This revision was automatically updated to reflect the committed changes.

lld: error: unknown argument: --image-base=0x10000000 ?

Yes, that shows that lld doesn't support that form of that option - the question is whether ld.bfd supports that form of that particular option (I would assume it does as it uses getopt iirc).

That's an error from a couple of actual packages (meanwhile and openldap)

lld: error: unknown argument: --image-base=0x10000000 ?

Yes, that shows that lld doesn't support that form of that option - the question is whether ld.bfd supports that form of that particular option (I would assume it does as it uses getopt iirc).

That's an error from a couple of actual packages (meanwhile and openldap)

Oh, ok, so those would be more low hanging fruit to fix by doing the same for that option.