| @section WebAssembly backend | 
 | The WebAssembly module file format, at present, is a very simple | 
 | object file format with up to 11 numbered sections plus named | 
 | ``custom'' sections. At present, there is no standard for relocations | 
 | or symbols, though a @code{"name"} subsection can assign names to | 
 | function indices and local variables. | 
 |  | 
 | As such, it offers no real advantages over ELF, and intermediate ELF | 
 | files can be used to produce WebAssembly modules. The WebAssembly | 
 | backend aims to enable the opposite: reading a WebAssembly module and | 
 | producing an ELF file containing the same information, which can then | 
 | be manipulated and inspected with standard tools. | 
 |  | 
 | When writing WebAssembly modules, the WebAssembly backend attempts to | 
 | determine based on the section name whether to use a numeric section | 
 | id, a named section header, or to include the section verbatim, | 
 | assuming it already contains any necessary header. | 
 |  | 
 | Function names are supported as symbols; local names and WebAssembly | 
 | relocation sections are currently unsupported. | 
 |  | 
 | There are slight differences in the LEB128 integer implementations | 
 | between the WebAssembly specification and the BFD code; these result | 
 | in some malformed WebAssembly modules being treated as valid. | 
 |  | 
 | @menu | 
 | * File layout:: | 
 | @end menu | 
 |  | 
 | @node File layout, WebAssembly | 
 | @subsection File layout | 
 | For a description of the WebAssembly file format, see | 
 | @url{https://github.com/WebAssembly/design/blob/master/BinaryEncoding.md}. |