1*a0e01becSAnton Korobeynikov; RUN: llvm-as < %s | llc 2*a0e01becSAnton Korobeynikov; PR4778 3*a0e01becSAnton Korobeynikovtarget datalayout = "e-p:16:8:8-i8:8:8-i16:8:8-i32:8:8" 4*a0e01becSAnton Korobeynikovtarget triple = "msp430-generic-generic" 5*a0e01becSAnton Korobeynikov 6*a0e01becSAnton Korobeynikovdefine signext i8 @__nesc_atomic_start() nounwind { 7*a0e01becSAnton Korobeynikoventry: 8*a0e01becSAnton Korobeynikov %0 = tail call i16 asm sideeffect "mov r2, $0", "=r"() nounwind ; <i16> [#uses=1] 9*a0e01becSAnton Korobeynikov %1 = trunc i16 %0 to i8 ; <i8> [#uses=1] 10*a0e01becSAnton Korobeynikov %and3 = lshr i8 %1, 3 ; <i8> [#uses=1] 11*a0e01becSAnton Korobeynikov %conv1 = and i8 %and3, 1 ; <i8> [#uses=1] 12*a0e01becSAnton Korobeynikov tail call void asm sideeffect "dint", ""() nounwind 13*a0e01becSAnton Korobeynikov tail call void asm sideeffect "nop", ""() nounwind 14*a0e01becSAnton Korobeynikov tail call void asm sideeffect "", "~{memory}"() nounwind 15*a0e01becSAnton Korobeynikov ret i8 %conv1 16*a0e01becSAnton Korobeynikov} 17