[PATCH] D111227: [WebAssembly] Implementation of table.grow/size and ref.null intrinsics

Paulo Matos via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 19 09:52:42 PDT 2021


pmatos updated this revision to Diff 380716.
pmatos added a comment.

Implements the intrinsic generating ref.null.

The test ref-null.ll passes but the implementation raised questions on how funcref is represented.
Because (apparently) IITDescriptor didn't include the ability to represent functions, I added a 
straightforward way in the current patch but it's definitely a draft version that provides food 
for thought.

Also raises questions on how to represent funcrefs that represent different FunctionTypes, i.e. 
different parameter count/type and different return type.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D111227/new/

https://reviews.llvm.org/D111227

Files:
  llvm/include/llvm/IR/Intrinsics.h
  llvm/include/llvm/IR/Intrinsics.td
  llvm/include/llvm/IR/IntrinsicsWebAssembly.td
  llvm/lib/CodeGen/ValueTypes.cpp
  llvm/lib/IR/Function.cpp
  llvm/lib/Target/WebAssembly/WebAssemblyInstrRef.td
  llvm/lib/Target/WebAssembly/WebAssemblyInstrTable.td
  llvm/test/CodeGen/WebAssembly/ref-null.ll
  llvm/test/CodeGen/WebAssembly/table-grow.ll
  llvm/utils/TableGen/IntrinsicEmitter.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D111227.380716.patch
Type: text/x-patch
Size: 11236 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20211019/5ce11085/attachment.bin>


More information about the llvm-commits mailing list