[all-commits] [llvm/llvm-project] 890146: [WebAssembly] Initial support for reference type e...

Paulo Matos via All-commits all-commits at lists.llvm.org
Fri Feb 17 18:49:08 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 890146b19206827bc48ee1ae1dc1534ff2ff18d7
      https://github.com/llvm/llvm-project/commit/890146b19206827bc48ee1ae1dc1534ff2ff18d7
  Author: Paulo Matos <pmatos at igalia.com>
  Date:   2023-02-17 (Fri, 17 Feb 2023)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    A clang/include/clang/Basic/WebAssemblyReferenceTypes.def
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/module.modulemap
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/TargetInfo.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/CodeGen/WebAssembly/wasm-externref.c
    M clang/test/CodeGen/builtins-wasm.c
    A clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
    A clang/test/CodeGenCXX/wasm-reftypes-typeinfo.cpp
    A clang/test/Sema/wasm-refs.c
    A clang/test/SemaCXX/wasm-refs.cpp
    M clang/test/SemaTemplate/address_space-dependent.cpp
    M clang/tools/libclang/CIndex.cpp
    M llvm/include/llvm/IR/Type.h
    M llvm/include/llvm/Transforms/Utils.h
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Transforms/Utils/Mem2Reg.cpp

  Log Message:
  -----------
  [WebAssembly] Initial support for reference type externref in clang

This patch introduces a new type __externref_t that denotes a WebAssembly opaque
reference type. It also implements builtin __builtin_wasm_ref_null_extern(),
that returns a null value of __externref_t. This lays the ground work
for further builtins and reference types.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D122215




More information about the All-commits mailing list