aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/LiveDebugVariables.cpp
diff options
context:
space:
mode:
authorNikita Popov <npopov@redhat.com>2022-01-21 15:46:00 +0100
committerNikita Popov <npopov@redhat.com>2022-02-04 09:47:31 +0100
commite990e591c97653e50a77097c0cb2cd26f2ce5413 (patch)
tree94ca13134c0bfe4445210b37f695fdb4aca10511 /llvm/lib/CodeGen/LiveDebugVariables.cpp
parent3db39e74792d774c9d413710d690daf31b1d0d0c (diff)
downloadllvm-e990e591c97653e50a77097c0cb2cd26f2ce5413.zip
llvm-e990e591c97653e50a77097c0cb2cd26f2ce5413.tar.gz
llvm-e990e591c97653e50a77097c0cb2cd26f2ce5413.tar.bz2
[LangRef] Require elementtype attribute for gc.statepoint intrinsic
The gc.statepoint intrinsic currently determines the target function type based on the pointer element type of the argument. In order to support opaque pointers, require that the argument is annotated with an elementtype attribute. Here's an example of the change: ; Before: %safepoint_token = tail call token (i64, i32, i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i64 0, i32 0, i1 ()* @return_i1, i32 0, i32 0, i32 0, i32 0) ; After: %safepoint_token = tail call token (i64, i32, i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_i1f(i64 0, i32 0, i1 ()* elementtype(i1 ()) @return_i1, i32 0, i32 0, i32 0, i32 0) ; After with opaque pointers: %safepoint_token = tail call token (i64, i32, i1 ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0(i64 0, i32 0, ptr elementtype(i1 ()) @return_i1, i32 0, i32 0, i32 0, i32 0) Differential Revision: https://reviews.llvm.org/D117890
Diffstat (limited to 'llvm/lib/CodeGen/LiveDebugVariables.cpp')
0 files changed, 0 insertions, 0 deletions