summaryrefslogtreecommitdiff
path: root/test/CodeGen/Blackfin/2009-08-15-LiveIn-SubReg.ll
blob: 412c66913b2dc2cb0d07b1538d4a00639e36a189 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
; RUN: llc < %s -march=bfin -verify-machineinstrs
; XFAIL: *

; When joining live intervals of sub-registers, an MBB live-in list is not
; updated properly. The register scavenger asserts on an undefined register.

define i32 @foo(i8 %bar) {
entry:
  switch i8 %bar, label %bb1203 [
    i8 117, label %bb1204
    i8 85, label %bb1204
    i8 106, label %bb1204
  ]

bb1203:                                           ; preds = %entry
  ret i32 1

bb1204:                                           ; preds = %entry, %entry, %entry
  ret i32 2
}