From a530a4d92563fc15097b9fa66aa03aa9e41137fc Mon Sep 17 00:00:00 2001 From: Nick Lewycky Date: Tue, 2 Aug 2011 00:40:16 +0000 Subject: Bail from FastISel when we encounter a volatile memset intrinsic. Patch by Ivan Krasin! llvm-svn: 136663 --- llvm/lib/Target/X86/X86FastISel.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'llvm/lib/Target/X86/X86FastISel.cpp') diff --git a/llvm/lib/Target/X86/X86FastISel.cpp b/llvm/lib/Target/X86/X86FastISel.cpp index 24f4437ec7d..f5db6d28a24 100644 --- a/llvm/lib/Target/X86/X86FastISel.cpp +++ b/llvm/lib/Target/X86/X86FastISel.cpp @@ -1365,6 +1365,9 @@ bool X86FastISel::X86VisitIntrinsicCall(const IntrinsicInst &I) { case Intrinsic::memset: { const MemSetInst &MSI = cast(I); + if (MSI.isVolatile()) + return false; + unsigned SizeWidth = Subtarget->is64Bit() ? 64 : 32; if (!MSI.getLength()->getType()->isIntegerTy(SizeWidth)) return false; -- cgit v1.2.3