summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
diff options
context:
space:
mode:
authorReid Kleckner <rnk@google.com>2018-11-03 00:41:52 +0000
committerReid Kleckner <rnk@google.com>2018-11-03 00:41:52 +0000
commit2bcb288ade6df8f12157c36157ecfdc879fd95e1 (patch)
treef9196dba9c60bad4a2090c2d91fa44f2ad01fb55 /llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
parent5253cccbd5fbc6db3d3bf278c40302f9f222c6e7 (diff)
downloadbcm5719-llvm-2bcb288ade6df8f12157c36157ecfdc879fd95e1.tar.gz
bcm5719-llvm-2bcb288ade6df8f12157c36157ecfdc879fd95e1.zip
[codeview] Let the X86 backend tell us the VFRAME offset adjustment
Use MachineFrameInfo's OffsetAdjustment field to pass this information from the target to CodeViewDebug.cpp. The X86 backend doesn't use it for any other purpose. This fixes PR38857 in the case where there is a non-aligned quantity of CSRs and a non-aligned quantity of locals. llvm-svn: 346062
Diffstat (limited to 'llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h')
-rw-r--r--llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h b/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
index b6fbdc1373f..ef0f0c3635e 100644
--- a/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
+++ b/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
@@ -153,6 +153,9 @@ class LLVM_LIBRARY_VISIBILITY CodeViewDebug : public DebugHandlerBase {
/// Number of bytes pushed to save CSRs.
unsigned CSRSize = 0;
+ /// Adjustment to apply on x86 when using the VFRAME frame pointer.
+ int OffsetAdjustment = 0;
+
/// Two-bit value indicating which register is the designated frame pointer
/// register for local variables. Included in S_FRAMEPROC.
codeview::EncodedFramePtrReg EncodedLocalFramePtrReg =
OpenPOWER on IntegriCloud