1*65b40f27SMatt Arsenault; REQUIRES: x86_64-linux 2*65b40f27SMatt Arsenault; RUN: rm -rf %t.rundir 3*65b40f27SMatt Arsenault; RUN: rm -rf %t.channel-basename.* 4*65b40f27SMatt Arsenault; RUN: mkdir %t.rundir 5*65b40f27SMatt Arsenault; RUN: cp %S/../../../lib/Analysis/models/log_reader.py %t.rundir 6*65b40f27SMatt Arsenault; RUN: cp %S/../../../lib/Analysis/models/interactive_host.py %t.rundir 7*65b40f27SMatt Arsenault; RUN: cp %S/Inputs/interactive_main.py %t.rundir 8*65b40f27SMatt Arsenault; RUN: %python %t.rundir/interactive_main.py %t.channel-basename \ 9*65b40f27SMatt Arsenault; RUN: llc -mtriple=x86_64-linux-unknown -regalloc=greedy -regalloc-enable-advisor=release -interactive-model-runner-echo-reply \ 10*65b40f27SMatt Arsenault; RUN: -regalloc-evict-interactive-channel-base=%t.channel-basename %S/Inputs/two-large-fcts.ll -o /dev/null | FileCheck %s 11*65b40f27SMatt Arsenault 12*65b40f27SMatt Arsenault;; Make sure we see both contexts. Also sanity-check that the advice is the 13*65b40f27SMatt Arsenault;; expected one - the index of the first legal register 14*65b40f27SMatt Arsenault; CHECK: context: SyFgets 15*65b40f27SMatt Arsenault; CHECK-NEXT: observation: 0 16*65b40f27SMatt Arsenault; CHECK-NEXT: mask: 0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 17*65b40f27SMatt Arsenault; CHECK: observation: 1 18*65b40f27SMatt Arsenault; CHECK-NEXT: mask: 0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 19*65b40f27SMatt Arsenault; CHECK: context: SyFgetsCopy 20*65b40f27SMatt Arsenault; CHECK-NEXT: observation: 0 21*65b40f27SMatt Arsenault 22*65b40f27SMatt Arsenault; CHECK: index_to_evict: 9 23*65b40f27SMatt Arsenault; CHECK-NEXT: index_to_evict: 10 24