[PATCH] D13110: New StackMap format
Kyungwoo Lee via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 23 10:57:10 PDT 2015
kyulee1 created this revision.
kyulee1 added reviewers: ributzka, swaroop.sridhar.
kyulee1 added a subscriber: llvm-commits.
Herald added a subscriber: sanjoy.
The current stackmap format exposed limitations. This new is based on the discussed proposal (http://lists.llvm.org/pipermail/llvm-dev/2015-July/087826.html).
In particular, there were missing correlation between functions and stackmap records, which required clients to keep track of the correlations. The new format fixes this issue.
The new format has additional information like function size and call size for the client's needs.
The format is now flat. Every contents are at a fixed offsets from the header, which makes parsing easier.
FrameRegister content has not been implemented yet, which will be reconciled after further clarification.
Note the plan is to keep two versions of stackmap in the current release allowing clients to update their use and then replace the existing version by the new one in the next release.
http://reviews.llvm.org/D13110
Files:
docs/StackMaps.rst
include/llvm/CodeGen/AsmPrinter.h
include/llvm/CodeGen/StackMaps.h
include/llvm/Object/StackMapParser.h
lib/CodeGen/AsmPrinter/AsmPrinter.cpp
lib/CodeGen/StackMaps.cpp
lib/Target/AArch64/AArch64AsmPrinter.cpp
lib/Target/PowerPC/PPCAsmPrinter.cpp
lib/Target/X86/X86AsmPrinter.h
lib/Target/X86/X86MCInstLower.cpp
test/CodeGen/X86/stackmap-fast-isel.ll
test/CodeGen/X86/stackmap-frame-setup.ll
test/CodeGen/X86/stackmap-large-constants.ll
test/CodeGen/X86/stackmap-liveness.ll
test/CodeGen/X86/stackmap-nops.ll
test/CodeGen/X86/stackmap-shadow-optimization.ll
test/CodeGen/X86/stackmap.ll
test/CodeGen/X86/statepoint-allocas.ll
test/CodeGen/X86/statepoint-call-lowering.ll
test/CodeGen/X86/statepoint-stackmap-format.ll
tools/llvm-readobj/COFFDumper.cpp
tools/llvm-readobj/ELFDumper.cpp
tools/llvm-readobj/MachODumper.cpp
tools/llvm-readobj/ObjDumper.h
tools/llvm-readobj/StackMapPrinter.h
tools/llvm-readobj/llvm-readobj.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D13110.35528.patch
Type: text/x-patch
Size: 120806 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150923/edf029f6/attachment.bin>
More information about the llvm-commits
mailing list