1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 05:01:59 +01:00

Fold bswap(undef) to undef.

llvm-svn: 96432
This commit is contained in:
Dan Gohman 2010-02-17 00:54:58 +00:00
parent 82f46afcdd
commit 2a4208c74e
2 changed files with 12 additions and 0 deletions

View File

@ -1179,6 +1179,12 @@ llvm::ConstantFoldCall(Function *F,
return 0;
}
if (isa<UndefValue>(Operands[0])) {
if (Name.startswith("llvm.bswap"))
return Operands[0];
return 0;
}
return 0;
}

View File

@ -67,3 +67,9 @@ define i16 @test8(i64 %A) {
%D = tail call i16 @llvm.bswap.i16(i16 %C) nounwind
ret i16 %D
}
; Misc: Fold bswap(undef) to undef.
define i64 @foo() {
%a = call i64 @llvm.bswap.i64(i64 undef)
ret i64 %a
}