OSDN Git Service

[StackMaps] Increase the size of the "location size" field
authorSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 28 Apr 2017 04:48:42 +0000 (04:48 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 28 Apr 2017 04:48:42 +0000 (04:48 +0000)
commitedb3c90b175e5159a3a884196e2975108d38688e
treea29073e13e9e9f1029e6601b5abda8b75b215d1c
parentdf4f50c81f7e7c433dd6da3ff2511430bd566ba0
[StackMaps] Increase the size of the "location size" field

Summary:
In some cases LLVM (especially the SLP vectorizer) will create vectors
that are 256 bytes (or larger).  Given that this is intentional[0] is
likely to get more common, this patch updates the StackMap binary
format to deal with the spill locations for said vectors.

This change also bumps the stack map version from 2 to 3.

[0]: https://reviews.llvm.org/D32533#738350

Reviewers: reames, kavon, skatkov, javed.absar

Subscribers: mcrosier, nemanjai, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@301615 91177308-0d34-0410-b5e6-96231b3b80d8
21 files changed:
docs/StackMaps.rst
lib/CodeGen/StackMaps.cpp
test/CodeGen/AArch64/arm64-anyregcc.ll
test/CodeGen/AArch64/arm64-stackmap.ll
test/CodeGen/AArch64/stackmap-liveness.ll
test/CodeGen/PowerPC/ppc64-anyregcc.ll
test/CodeGen/PowerPC/ppc64-stackmap.ll
test/CodeGen/X86/anyregcc.ll
test/CodeGen/X86/deopt-bundles.ll
test/CodeGen/X86/deopt-intrinsic-cconv.ll
test/CodeGen/X86/deopt-intrinsic.ll
test/CodeGen/X86/patchpoint-invoke.ll
test/CodeGen/X86/stackmap-fast-isel.ll
test/CodeGen/X86/stackmap-large-constants.ll
test/CodeGen/X86/stackmap-large-location-size.ll [new file with mode: 0644]
test/CodeGen/X86/stackmap-liveness.ll
test/CodeGen/X86/stackmap.ll
test/CodeGen/X86/statepoint-allocas.ll
test/CodeGen/X86/statepoint-live-in.ll
test/CodeGen/X86/statepoint-stackmap-format.ll
test/CodeGen/X86/statepoint-vector.ll