[llvm] r242399 - [X86] Test for r242395 (Fix emitPrologue() to make less assumptions about pushes)

Michael Kuperstein michael.m.kuperstein at intel.com
Thu Jul 16 06:55:39 PDT 2015


Author: mkuper
Date: Thu Jul 16 08:55:39 2015
New Revision: 242399

URL: http://llvm.org/viewvc/llvm-project?rev=242399&view=rev
Log:
[X86] Test for r242395 (Fix emitPrologue() to make less assumptions about pushes)

Added:
    llvm/trunk/test/CodeGen/X86/prolog-push-seq.ll

Added: llvm/trunk/test/CodeGen/X86/prolog-push-seq.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/prolog-push-seq.ll?rev=242399&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/X86/prolog-push-seq.ll (added)
+++ llvm/trunk/test/CodeGen/X86/prolog-push-seq.ll Thu Jul 16 08:55:39 2015
@@ -0,0 +1,19 @@
+; RUN: llc < %s | FileCheck %s
+
+target datalayout = "e-m:x-p:32:32-i64:64-f80:32-n8:16:32-a:0:32-S32"
+target triple = "i386-pc-windows-msvc18.0.0"
+
+declare x86_thiscallcc void @bar(i32 %a, i32 %b)
+
+define fastcc void @foo(i32 %a, i32 %b) #0 {
+; CHECK-LABEL: foo:
+; CHECK: subl $64, %esp
+; CHECK-NEXT: pushl
+; CHECK-NEXT: calll _bar
+  %local = alloca i32, i32 16
+  call x86_thiscallcc void @bar(i32 %a, i32 %b)
+  call void asm sideeffect "nop", "~{ax},~{bx},~{cx},~{dx},~{bp},~{si},~{di}"()
+  ret void
+}
+
+attributes #0 = { nounwind optsize "no-frame-pointer-elim-non-leaf"}
\ No newline at end of file





More information about the llvm-commits mailing list