HomePhabricator

[DebugInfo] llvm rejects DWARF operator DW_OP_push_object_address

Authored by alok on May 14 2020, 10:28 PM.

Description

[DebugInfo] llvm rejects DWARF operator DW_OP_push_object_address

llvm rejects DWARF operator DW_OP_push_object_address.This DWARF
operator is needed for Flang to support allocatable array.

Summary:
Currently llvm rejects DWARF operator DW_OP_push_object_address.
below error is produced when llvm finds this operator.

[..]
invalid expression
!DIExpression(151)
warning: ignoring invalid debug info in pushobj.ll
[..]

There are some parts missing in support of this operator, need to
be completed.

Testing
-added a unit testcase
-check-debuginfo
-check-llvm

Reviewed By: aprantl

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