[llvm] r178549 - [fast-isel] Use the correct API to disable FastLowerArguments for Win64.

Chad Rosier mcrosier at apple.com
Tue Apr 2 09:31:41 PDT 2013


Author: mcrosier
Date: Tue Apr  2 11:31:41 2013
New Revision: 178549

URL: http://llvm.org/viewvc/llvm-project?rev=178549&view=rev
Log:
[fast-isel] Use the correct API to disable FastLowerArguments for Win64.

Modified:
    llvm/trunk/lib/Target/X86/X86FastISel.cpp
    llvm/trunk/test/CodeGen/X86/fast-isel-args-fail.ll

Modified: llvm/trunk/lib/Target/X86/X86FastISel.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86FastISel.cpp?rev=178549&r1=178548&r2=178549&view=diff
==============================================================================
--- llvm/trunk/lib/Target/X86/X86FastISel.cpp (original)
+++ llvm/trunk/lib/Target/X86/X86FastISel.cpp Tue Apr  2 11:31:41 2013
@@ -1528,7 +1528,7 @@ bool X86FastISel::FastLowerArguments() {
   if (!FuncInfo.CanLowerReturn)
     return false;
 
-  if (Subtarget->isTargetWindows())
+  if (Subtarget->isTargetWin64())
     return false;
 
   const Function *F = FuncInfo.Fn;

Modified: llvm/trunk/test/CodeGen/X86/fast-isel-args-fail.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fast-isel-args-fail.ll?rev=178549&r1=178548&r2=178549&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/X86/fast-isel-args-fail.ll (original)
+++ llvm/trunk/test/CodeGen/X86/fast-isel-args-fail.ll Tue Apr  2 11:31:41 2013
@@ -1,5 +1,6 @@
 ; RUN: llc < %s -fast-isel -verify-machineinstrs -mtriple=x86_64-apple-darwin10
-; RUN: llc < %s -fast-isel -verify-machineinstrs -mtriple=x86_64-pc-win32 | FileCheck %s 
+; RUN: llc < %s -fast-isel -verify-machineinstrs -mtriple=x86_64-pc-win32 | FileCheck %s -check-prefix=WIN32
+; RUN: llc < %s -fast-isel -verify-machineinstrs -mtriple=x86_64-pc-win64 | FileCheck %s -check-prefix=WIN64
 ; Requires: Asserts
 
 ; Previously, this would cause an assert.
@@ -13,8 +14,10 @@ entry:
 ; We don't handle the Windows CC, yet.
 define i32 @foo(i32* %p) {
 entry:
-; CHECK: foo
-; CHECK: movl (%rcx), %eax
+; WIN32: foo
+; WIN32: movl (%rcx), %eax
+; WIN64: foo
+; WIN64: movl (%rdi), %eax
   %0 = load i32* %p, align 4
   ret i32 %0
 }





More information about the llvm-commits mailing list