OpaquePtr: Turn inalloca into a type attribute
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Sat, 6 Mar 2021 18:23:57 +0000 (13:23 -0500)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Sun, 28 Mar 2021 15:12:23 +0000 (11:12 -0400)
commit4fefed65637ec46c8c2edad6b07b5569ac61e9e5
tree171d28547e3a06a99265af6ead0f579bcf30a1d8
parentc5243c63cda3c740d6e9c7e501f6518c21688da3
OpaquePtr: Turn inalloca into a type attribute

I think byval/sret and the others are close to being able to rip out
the code to support the missing type case. A lot of this code is
shared with inalloca, so catch this up to the others so that can
happen.
91 files changed:
clang/lib/CodeGen/CGCall.cpp
clang/test/CodeGenCXX/attr-target-mv-inalloca.cpp
clang/test/CodeGenCXX/inalloca-overaligned.cpp
clang/test/CodeGenCXX/inalloca-vector.cpp
clang/test/CodeGenCXX/inheriting-constructor.cpp
clang/test/CodeGenCXX/microsoft-abi-arg-order.cpp
clang/test/CodeGenCXX/microsoft-abi-byval-sret.cpp
clang/test/CodeGenCXX/microsoft-abi-byval-thunks.cpp
clang/test/CodeGenCXX/microsoft-abi-byval-vararg.cpp
clang/test/CodeGenCXX/microsoft-abi-eh-cleanups.cpp
clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
clang/test/CodeGenCXX/microsoft-abi-vmemptr-conflicts.cpp
clang/test/CodeGenCXX/microsoft-abi-vtables-multiple-nonvirtual-inheritance-this-adjustment.cpp
clang/test/CodeGenCXX/ms-thunks-ehspec.cpp
clang/test/CodeGenCXX/vararg-non-pod-ms-compat.cpp
clang/test/CodeGenObjCXX/arc-indirect.mm
clang/test/CodeGenObjCXX/microsoft-abi-arc-param-order.mm
llvm/docs/LangRef.rst
llvm/docs/ReleaseNotes.rst
llvm/include/llvm/IR/Argument.h
llvm/include/llvm/IR/Attributes.h
llvm/include/llvm/IR/Attributes.td
llvm/include/llvm/IR/Function.h
llvm/lib/AsmParser/LLParser.cpp
llvm/lib/AsmParser/LLParser.h
llvm/lib/Bitcode/Reader/BitcodeReader.cpp
llvm/lib/IR/AsmWriter.cpp
llvm/lib/IR/AttributeImpl.h
llvm/lib/IR/Attributes.cpp
llvm/lib/IR/Function.cpp
llvm/lib/IR/Verifier.cpp
llvm/lib/Linker/IRMover.cpp
llvm/lib/Transforms/Utils/ValueMapper.cpp
llvm/test/Assembler/inalloca-parse-error0.ll [new file with mode: 0644]
llvm/test/Assembler/invalid-immarg.ll
llvm/test/Bitcode/Inputs/inalloca-upgrade.bc [new file with mode: 0644]
llvm/test/Bitcode/attributes.ll
llvm/test/Bitcode/compatibility-3.6.ll
llvm/test/Bitcode/compatibility-3.7.ll
llvm/test/Bitcode/compatibility-3.8.ll
llvm/test/Bitcode/compatibility-3.9.ll
llvm/test/Bitcode/compatibility-4.0.ll
llvm/test/Bitcode/compatibility-5.0.ll
llvm/test/Bitcode/compatibility-6.0.ll
llvm/test/Bitcode/compatibility.ll
llvm/test/Bitcode/inalloca-upgrade.test [new file with mode: 0644]
llvm/test/Bitcode/inalloca.ll
llvm/test/CodeGen/X86/arg-copy-elide.ll
llvm/test/CodeGen/X86/cleanuppad-inalloca.ll
llvm/test/CodeGen/X86/inalloca-ctor.ll
llvm/test/CodeGen/X86/inalloca-invoke.ll
llvm/test/CodeGen/X86/inalloca-regparm.ll
llvm/test/CodeGen/X86/inalloca-stdcall.ll
llvm/test/CodeGen/X86/inalloca.ll
llvm/test/CodeGen/X86/movtopush.ll
llvm/test/CodeGen/X86/musttail-inalloca.ll
llvm/test/CodeGen/X86/musttail-indirect.ll
llvm/test/CodeGen/X86/musttail-thiscall.ll
llvm/test/CodeGen/X86/shrink-wrap-chkstk.ll
llvm/test/CodeGen/X86/tail-call-mutable-memarg.ll
llvm/test/CodeGen/X86/x86-repmov-copy-eflags.ll
llvm/test/DebugInfo/X86/dbg-declare-inalloca.ll
llvm/test/Instrumentation/AddressSanitizer/instrument-dynamic-allocas.ll
llvm/test/Linker/Inputs/inalloca-type-input.ll [new file with mode: 0644]
llvm/test/Linker/inalloca-types.ll [new file with mode: 0644]
llvm/test/Transforms/ArgumentPromotion/X86/thiscall.ll
llvm/test/Transforms/ArgumentPromotion/inalloca.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/X86/thiscall.ll
llvm/test/Transforms/Attributor/ArgumentPromotion/inalloca.ll
llvm/test/Transforms/Attributor/readattrs.ll
llvm/test/Transforms/Attributor/value-simplify.ll
llvm/test/Transforms/DeadArgElim/keepalive.ll
llvm/test/Transforms/DeadStoreElimination/simple.ll
llvm/test/Transforms/FunctionAttrs/readattrs.ll
llvm/test/Transforms/GVNHoist/hoist-pr28606.ll
llvm/test/Transforms/GlobalOpt/fastcc.ll
llvm/test/Transforms/Inline/inalloca-not-static.ll
llvm/test/Transforms/InstCombine/alloca.ll
llvm/test/Transforms/InstCombine/call-cast-target-inalloca.ll
llvm/test/Transforms/InstCombine/stacksaverestore.ll
llvm/test/Verifier/align.ll
llvm/test/Verifier/amdgpu-cc.ll
llvm/test/Verifier/byref.ll
llvm/test/Verifier/byval-1.ll
llvm/test/Verifier/inalloca-vararg.ll
llvm/test/Verifier/inalloca1.ll
llvm/test/Verifier/inalloca2.ll
llvm/test/Verifier/inalloca3.ll
llvm/test/Verifier/noundef.ll
llvm/unittests/IR/AttributesTest.cpp
llvm/unittests/Transforms/Utils/CloningTest.cpp