Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 28 Nov 2017 14:53:58 +0000
From: Nicholas Wilson <nicholas.wilson@...lvnc.com>
To: "musl@...ts.openwall.com" <musl@...ts.openwall.com>
Subject: Re: [PATCH] Wasm support patch 2 (static syscalls)

I think LTO would be required - but I might be missing something in your scheme? I'm considering the cases like __setxid and pthread_cancel, where the compiler can't work out which syscall numbers are possible (because the numbers come from another translation unit). In these cases, there's no way to eliminate any of the branches in your switch statement.

In particular, getuid() is such a common library call that I think we do want to be able to support it on Wasm, without having Musl link in everything. I mean, it's not an obscure piece of functionality, so it's worth a small refactor to make it usable with Wasm.

It would be a bit awkward but acceptable I suppose to not support Wasm at -O0 (ie link in hundreds of syscalls when the optimiser is off).

Nick

________________________________________
From: Szabolcs Nagy <nsz@...t70.net>
Sent: 28 November 2017 14:35:50
To: musl@...ts.openwall.com
Subject: Re: [musl] [PATCH] Wasm support patch 2 (static syscalls)

* Nicholas Wilson <nicholas.wilson@...lvnc.com> [2017-11-28 14:34:41 +0000]:
> That's some sophisticated link-time optimisation you're expecting there! DCE on a single source file wouldn't do it.

it's a static inline function, no lto involved.

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ