mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
1e2fb2b2c4
This change has 2 components: Target-independent: add a method getDwarfFrameBase to TargetFrameLowering. It describes how the Dwarf frame base will be encoded. That can be a register (the default), the CFA (which replaces NVPTX-specific logic in DwarfCompileUnit), or a DW_OP_WASM_location descriptr. WebAssembly: Allow WebAssemblyFunctionInfo::getFrameRegister to return the correct virtual register instead of FP32/SP32 after WebAssemblyReplacePhysRegs has run. Make WebAssemblyExplicitLocals store the local it allocates for the frame register. Use this local information to implement getDwarfFrameBase The result is that the DW_AT_frame_base attribute is correctly encoded for each subprogram, and each param and local variable has a correct DW_AT_location that uses DW_OP_fbreg to refer to the frame base. This is a reland of rG3a05c3969c18 with fixes for the expensive-checks and Windows builds Differential Revision: https://reviews.llvm.org/D71681 |
||
---|---|---|
.. | ||
annotations.s | ||
array-fill.ll | ||
assembler-binary.ll | ||
atomics-encodings.s | ||
bad-fixup-expr.s | ||
basic-assembly-errors.s | ||
basic-assembly.s | ||
blockaddress.ll | ||
bss.ll | ||
bulk-memory-encodings.s | ||
comdat.ll | ||
compile-twice.ll | ||
custom-code-section.ll | ||
custom-sections.ll | ||
data-section.s | ||
data-symbol-in-text-section.ll | ||
debug-info.ll | ||
debug-localvar.ll | ||
dwarfdump.ll | ||
event-section.ll | ||
explicit-sections.ll | ||
export-name.s | ||
external-data.ll | ||
external-func-address.ll | ||
file-headers.ll | ||
func-address.ll | ||
function-alias.ll | ||
function-sections.ll | ||
global-ctor-dtor.ll | ||
import-module.s | ||
libcall.ll | ||
lit.local.cfg | ||
no-dead-strip.ll | ||
null-output.s | ||
objdump.s | ||
offset.ll | ||
reloc-code.ll | ||
reloc-data.ll | ||
reloc-pic.s | ||
sections.ll | ||
simd-encodings.s | ||
stack-ptr.ll | ||
tail-call-encodings.s | ||
type-index.s | ||
types.ll | ||
unnamed-data.ll | ||
visibility.ll | ||
weak-alias.s | ||
weak.s |