From 52a83995d656b7fc88d2b8ea723a8429f6a763a2 Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Wed, 20 Apr 2011 03:19:42 +0000 Subject: [PATCH] This should always be signed chars, so use int8_t. This fixes a miscompile when llvm is built with unsigned chars where an immediate such as 0xff would be zero extended to 64-bits, turning "cmp $0xff,%eax" into "cmp $0xffffffffffffffff,%eax". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129845 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86InstrInfo.td | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td index 2b928727f37..03a0b0c3aed 100644 --- a/lib/Target/X86/X86InstrInfo.td +++ b/lib/Target/X86/X86InstrInfo.td @@ -482,9 +482,9 @@ def X86_COND_P : PatLeaf<(i8 14)>; // alt. COND_PE def X86_COND_S : PatLeaf<(i8 15)>; let FastIselShouldIgnore = 1 in { // FastIsel should ignore all simm8 instrs. - def i16immSExt8 : ImmLeaf; - def i32immSExt8 : ImmLeaf; - def i64immSExt8 : ImmLeaf; + def i16immSExt8 : ImmLeaf; + def i32immSExt8 : ImmLeaf; + def i64immSExt8 : ImmLeaf; } def i64immSExt32 : ImmLeaf; -- 2.34.1