HomePhabricator

[DebugInfo] Re-engineer a test to be stricter, add XFails

Authored by jmorse on Feb 8 2021, 1:54 AM.

Description

[DebugInfo] Re-engineer a test to be stricter, add XFails

In the LLVM-IR for this test, the inlined argument "b" in the "a" function
is optimized out on certain architectures, not on others. This hasn't been
reported as a test failure since 93faeecd8fa and ff2073a51 because we would
create a variable that looks like this:

DW_TAG_formal_parameter
  DW_AT_abstract_origin

With no further information (and no location). With D95617 however, we
stop emitting such variables.

Prior to landing D95617: make this test stricter by checking that the
variable mentioned above has a location. We have to accept that on certain
architectures this goes missing, so add those to the XFail list.

I've run a few experiments, and right now it looks likely only powerpc64
still drops the variable location.