similar to: Inlining with different target features

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