decl wasm-split and reduce description
OBS-URL: https://build.opensuse.org/package/show/devel:languages:javascript/binaryen?expand=0&rev=3
This commit is contained in:
parent
8ea886c511
commit
f44e8d7143
@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Feb 3 23:43:44 UTC 2021 - Avindra Goolcharan <avindra@opensuse.org>
|
||||
|
||||
- Declare missing wasm-split binary
|
||||
- simplify and neutralize the description
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jan 18 04:30:11 UTC 2021 - Garret Wassermann <gwasser@gmail.com>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package binaryen
|
||||
#
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
# Copyright (c) 2021 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -33,23 +33,38 @@ BuildRequires: python-devel
|
||||
Requires: lib%{name} = %{version}
|
||||
|
||||
%description
|
||||
Binaryen is a compiler and toolchain infrastructure library for WebAssembly, written in C++. It aims to make compiling to WebAssembly easy, fast, and effective:
|
||||
Binaryen is a compiler and toolchain infrastructure library for WebAssembly,
|
||||
written in C++, for compiling WebAssembly.
|
||||
|
||||
* Easy: Binaryen has a simple C API in a single header. It accepts input in WebAssembly-like form but also accepts a general control flow graph for compilers that prefer that.
|
||||
* Fast: Binaryen's internal IR uses compact data structures and is designed for completely parallel codegen and optimization, using all available CPU cores. Binaryen's IR also compiles down to WebAssembly extremely easily and quickly because it is essentially a subset of WebAssembly.
|
||||
* Effective: Binaryen's optimizer has many passes that can improve code very significantly (e.g. local coloring to coalesce local variables; dead code elimination; precomputing expressions when possible at compile time; etc.). These optimizations aim to make Binaryen powerful enough to be used as a compiler backend by itself. One specific area of focus is on WebAssembly-specific optimizations (that general-purpose compilers might not do), which you can think of as wasm minification, similar to minification for JavaScript, CSS, etc., all of which are language-specific (an example of such an optimization is block return value generation in SimplifyLocals).
|
||||
Compilers built using Binaryen include
|
||||
* Binaryen has a single header C API. It accepts input in WebAssembly-like form,
|
||||
but also accepts a general control flow graph for compilers that prefer that.
|
||||
* Binaryen's internal IR uses compact data structures and is designed for
|
||||
completely parallel codegen and optimization, using all available CPU cores.
|
||||
* Binaryen IR compiles down to WebAssembly easily and quickly because it is
|
||||
a subset of WebAssembly.
|
||||
* Effective: Binaryen's optimizer has many passes that can improve code (e.g.
|
||||
local coloring to coalesce local variables, dead code elimination; precomputing
|
||||
expressions when possible at compile time; etc.).
|
||||
* WASM minification
|
||||
|
||||
Compilers built using Binaryen include:
|
||||
|
||||
* s2wasm which compiles the LLVM WebAssembly's backend .s output format
|
||||
* mir2wasm which compiles Rust MIR
|
||||
|
||||
Those compilers generate Binaryen IR which can then be optimized and emitted as WebAssembly (the first two use the internal C++ API, the last the C API).
|
||||
Those compilers generate Binaryen IR, which can then be optimized and
|
||||
emitted as WebAssembly (the first two use the internal C++ API, the
|
||||
last the C API).
|
||||
|
||||
Binaryen also provides a set of toolchain utilities that can
|
||||
* Parse and emit WebAssembly. In particular this lets you load WebAssembly, optimize it using Binaryen, and re-emit it, thus implementing a wasm-to-wasm optimizer.
|
||||
Binaryen provides a toolchain that can:
|
||||
|
||||
* Parse and emit WebAssembly. Users can load WebAssembly, optimize it
|
||||
using Binaryen, and re-emit it, thus implementing a wasm-to-wasm optimizer.
|
||||
* Interpret WebAssembly as well as run the WebAssembly spec tests.
|
||||
* Integrate with Emscripten in order to provide a complete compiler toolchain from C and C++ to WebAssembly.
|
||||
* Polyfill WebAssembly by running it in the interpreter compiled to JavaScript, if the browser does not yet have native support (useful for testing).
|
||||
* Integrate with Emscripten in order to provide a complete compiler
|
||||
toolchain from C and C++ to WebAssembly.
|
||||
* Polyfill WebAssembly by running it in the interpreter compiled to JavaScript,
|
||||
if the browser does not yet have native support (useful for testing).
|
||||
|
||||
%package -n lib%{name}
|
||||
Summary: Library for %{name}
|
||||
@ -99,6 +114,7 @@ EOF
|
||||
%{_bindir}/wasm-opt
|
||||
%{_bindir}/wasm-reduce
|
||||
%{_bindir}/wasm-shell
|
||||
%{_bindir}/wasm-split
|
||||
|
||||
%files -n lib%{name}
|
||||
%{_libdir}/lib%{name}.so
|
||||
|
Loading…
x
Reference in New Issue
Block a user