[all-commits] [llvm/llvm-project] 1e6303: [OpaquePtr] Allow globals with opaque pointer valu...

Nikita Popov via All-commits all-commits at lists.llvm.org
Fri Jun 25 09:29:28 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1e6303e60ca5af4fbe7ca728572fd65666a98271
      https://github.com/llvm/llvm-project/commit/1e6303e60ca5af4fbe7ca728572fd65666a98271
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2021-06-25 (Fri, 25 Jun 2021)

  Changed paths:
    M llvm/lib/IR/Type.cpp
    R llvm/test/Assembler/invalid-opaque-ptr.ll
    M llvm/test/Assembler/opaque-ptr.ll

  Log Message:
  -----------
  [OpaquePtr] Allow globals with opaque pointer value type

Do this by making opaque pointers a valid pointer element type,
for which we implicitly create an opaque pointer (moving the logic
from getPointerTo into PointerType::get).

We'll never create something like a "pointer to opaque pointer",
but accept it in the API, because a lot of code reasonably assumes
that you can create a pointer to pointer type.

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




More information about the All-commits mailing list