Displaying 20 results from an estimated 20000 matches similar to: "Inlining with different target features"
2020 Aug 31
3
Inlining with different target features
David,
That's right, WebAssembly does not have a way to conditionally use a
feature or even do runtime feature testing right now. It's on our roadmap
of things to design and standardize, but it is still a long way off.
> Another direction would be to require the features to be specified
consistently for all components of the build, I guess - if that's the net
effect anyway. Would
2019 Oct 15
4
Wasm, start function, and default globals
Apologies if there is a better forum for these questions. Please redirect me if so.
I’ve been using the clang/wasm-ld tools to experiment with some basic examples, and there’s a couple things I’m wrestling with.
1) How to denote a function as the “start” function (https://webassembly.github.io/spec/core/binary/modules.html#start-section)
2) How to avoid the defaulted __heap_base global.
I’ve
2019 May 08
2
Where to send emails with questions about WebAssembly?
Okay, so where should I send questions for WebAssembly? Is it this mailing list or a different one? I want to ask about how to compile WebAssembly modules with Clang directly, without Emscripten, for situations like what I have currently where I have a problem with generating WebAssembly and/or JavaScript glue code (I have a problem with the gen_struct_info stuff; I asked on the Emscripten
2017 Jan 03
2
LLVM WebAssembly target
Hello.
Excuse me.
Why CMakeLists.txt from llvm-3.9.1.src does not contain WebAssembly target?
So, it is like
set(LLVM_ALL_TARGETS
AArch64
AMDGPU
ARM
BPF
Hexagon
Mips
MSP430
NVPTX
PowerPC
Sparc
SystemZ
X86
XCore
)
but not like
set(LLVM_ALL_TARGETS
AArch64
AMDGPU
ARM
BPF
Hexagon
Mips
MSP430
NVPTX
PowerPC
Sparc
SystemZ
Webassembly
X86
2018 Nov 05
5
Safe fptoui/fptosi casts
I would be interested in learning what the set of used semantics for
float-to-int conversion is. If the only two used are 1) undefined behavior
if unrepresentable and 2) saturate to int_{min,max} with NaN going to zero,
then I think it makes sense to expose both of those natively in the IR. If
the set is much larger, I think separate intrinsics for each behavior would
make sense. It would be nice
2017 Jul 06
3
[LLD] Adding WebAssembly support to lld
Dan Gohman <sunfish at mozilla.com> writes:
>> Sorry, I meant why that didn't work with ELF (or what else didn't).
>>
>
> The standard executable WebAssembly format does not use ELF, for numerous
> reasons, most visibly that ELF is designed for sparse decoding -- headers
> contain offsets to arbitrary points in the file, while WebAssembly's format
> is
2018 Nov 17
2
Generating exported wasm functions
Using LLVM v5, my Cone compiler (https://github.com/jondgoodwin/cone)
automatically directly generated all functions as named and exported for
both wasm text and binary files (not using clang/lld etc, but using the
API).
Upgrading to LLVM v7, generated wasm object files now fail, exhibiting
markedly different behavior, behavior that varies between the text and
binary files. For example, the
2017 Jul 12
2
[LLD] Adding WebAssembly support to lld
On Mon, Jul 10, 2017 at 4:13 PM, Rui Ueyama via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> Sorry for the belated response. I was on vacation last week. A couple of
> thoughts on this patch and the story of webassembly linking.
And I'm about to be on (mostly) vacation for next 3 weeks :)
>
> - This patch adds a wasm support as yet another major architecture besides
>
2020 Aug 05
2
Debugging a potential bug when generating wasm32
Hi,
Sorry if you've seen this message before on llvm.discourse.group or elsewhere --
I've been trying to get to the bottom of this for a while now and asked about
this in a few different platforms before.
I'm currently trying to debug a bug in a LLVM-generated Wasm code. The bug could
be in the code that generates LLVM (rustc) or in the LLVM, I'm not sure yet.
LLVM IR and Wasm
2017 Jun 30
3
[LLD] Adding WebAssembly support to lld
Hi llvmers,
As you may know, work has been progressing on the experimental
WebAssembly backend in llvm. However, there is currently not a good
linking story. Most the of existing linking strategies (i.e. those in
the emscripten toolchain) involve bitcode linking and whole program
compilation at link time.
To improve this situation I've been working on adding a wasm backend
for lld. My
2020 Nov 17
1
RFC: Multiple program address spaces
Fixing llvm-dev at llvm.org to llvm-dev at lists.llvm.org
On Tue, Nov 17, 2020 at 11:27 AM Thomas Lively <tlively at google.com> wrote:
> Thanks for your work on this, Paulo!
>
> Here's some more detail about how function pointers work today in the
> WebAssembly backend and how they differ from the `funcref` Paulo is
> working on.
>
> Today in the WebAssembly
2017 Jul 01
1
[LLD] Adding WebAssembly support to lld
Can you link to docs about the wasm object format? (both relocatable and
executable)
Also, traditional object file linkers are primarily concerned with
concatenating binary blobs with small amount of patching of said binary
blobs based on computed virtual (memory) addresses. Or perhaps to put it
another way, what traditional object file linkers do is construct program
images meant to be mapped
2019 Nov 20
2
Question about physical registers in ISel
Can you elaborate on the fix you are thinking of? I'm not sure what you're
thinking should change.
On Tue, Nov 19, 2019 at 3:51 PM Quentin Colombet <qcolombet at apple.com>
wrote:
> It sounds to me that we should fix SDISel to accept both physical and
> virtual definitions on variadic instructions. Though I wouldn’t bother
> adding the support for implicit virtual
2019 Nov 19
2
Question about physical registers in ISel
To get into more detail, I'm trying to update WebAssembly's `call`
instruction. `call` is currently constrained to return one or zero
arguments, so in TableGen we have a separate call Instruction for each
possible return type. But I need to update calls to return arbitrarily many
values of any combination of WebAssembly types, so even if we imposed some
reasonable artificial limit like 8
2019 Nov 26
2
Thoughts on the LLVM linker
Hi,
I am using LLVM as the backend in a small hobby compiler project I'm
working on. I plan to support all platforms that LLVM supports (limited by
my available hardware only).
As far as I can tell, there are different linkers for the various host
systems out there (the output of 'lld' if you invoke it on Arch Linux):
lld is a generic driver.
Invoke ld.lld (Unix), ld64.lld
2018 Nov 02
3
WebAssembly Opus Decoder
If anyone is integrating Opus audio into a web or JavaScript application, I
wrote a WebAssembly Opus decoder that uses libopusfile to decode Opus files
in chunks using the JavaScript Streams API. This decoder can begin
decoding after receiving the Opus headers and first audio data page:
https://github.com/AnthumChris/opus-stream-decoder
All thoughts and contributions are welcome, and I'm
2015 Dec 09
2
Allowing virtual registers after register allocation
Hi all,
Virtual ISAs such as WebAssembly and NVPTX use infinite virtual register
sets instead of traditional phsyical registers. PrologEpilogInserter is run
after register allocation and asserts that all virtuals have been allocated
but doesn't otherwise depend on this if scavenging is not needed. We'd like
to use the target-independent PEI code for WebAssembly, so we're proposing
a
2019 Nov 19
2
Question about physical registers in ISel
Hi Quentin,
Thanks, that explanation makes sense. I can see that in a normal register
machine, implicitly defs must be physical registers. In a stack machine
like WebAssembly, though, implicit defs are known to be pushed onto the
value stack just like any other defs. Slots on the value stack are
represented by virtual registers until stackification, so for WebAssembly
we do need the implicit defs
2016 Jan 22
2
Allowing virtual registers after register allocation
Here are 2 patches, which are independent of each other.
The first splits PrologEpilogInserter into 2 parts :
http://reviews.llvm.org/D16481
After looking at the code I thought it made more sense for the major split
to include whether callee-saved register spills are supported. So for
non-virtual targets, virtual registers are not supported and scavenging is
optionally supported, and vice versa
2017 Jul 01
2
[LLD] Adding WebAssembly support to lld
Hi Sam,
First, I want to know the symbol resolution semantics. I can imagine that
that is set in stone yet, but just that you guys are still discussing what
would be the best semantics or file format for the linkable wasm object
file. I think by knowing more about the format and semantics, we can give
you guys valuable feedback, as we've been actively working on the linker
for a few years