HomePhabricator

[Attributor] Deduction based on path exploration

Authored by uenoku on Mar 8 2020, 10:19 PM.

Description

[Attributor] Deduction based on path exploration

This patch introduces the propagation of known information based on path exploration.
For example,

int u(int c, int *p){
  if(c) {
     return *p;
  } else {
     return *p + 1;
  }
}

An argument p is dereferenced whatever c's value is.

For an instruction CtxI, we accumulate branch instructions in the must-be-executed-context of CtxI and then, we take the conjunction of the successors' known state.

Reviewed By: jdoerfert

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

Details

Committed
uenokuMar 8 2020, 10:29 PM
Reviewer
jdoerfert
Differential Revision
D65593: [Attributor] Deduction based on path exploration
Parents
rG5e080dff7564: [MLIR] NFC: modernize affine loop fusion test cases
Branches
Unknown
Tags
Unknown