DIExpression

References:

DIExpression nodes: expressions that are inspired by the DWARF expression language. Used to describe how the referenced LLVM variable relates to the source language variable.

Debug intrinsics are interpreted left-to-right: start by pushing the value/address operand of the intrinsic onto a stack, then repeatedly push and evaluate opcodes from the DIExpression until the final variable description is produced.

Example opcodes:

  • DW_OP_deref: deferences the top of the expression stack;
  • DW_OP_plus: pops the last two entries from the expression stack, adds them together and appends the result to the expression stack.

More

Created Sep 14, 2020 // Last Updated Sep 14, 2020

If you could revise
the fundmental principles of
computer system design
to improve security...

... what would you change?