Skip to content
  • Evan Cheng's avatar
    GetRegForReload() now keeps track which registers have been considered and... · fc74e2de
    Evan Cheng authored
    GetRegForReload() now keeps track which registers have been considered and rejected during its quest to find a suitable reload register. This avoids an infinite loop in case like this:
      t1 := op t2, t3
      t2 <- assigned r0 for use by the reload but ended up reuse r1
      t3 <- assigned r1 for use by the reload but ended up reuse r0
      t1 <- desires r1
            sees r1 is taken by t2, tries t2's reload register r0
            sees r0 is taken by t3, tries t3's reload register r1
            sees r1 is taken by t2, tries t2's reload register r0 ...
    
    llvm-svn: 33382
    fc74e2de
Loading