Home | History | Annotate | Download | only in X86
      1 ; RUN: llc %s -o - -verify-machineinstrs | FileCheck %s
      2 
      3 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
      4 target triple = "x86_64-apple-unknown"
      5 
      6 @TheArray = external global [100000 x double], align 16
      7 
      8 ; This test ensures, via the machine verifier, that the register class for the
      9 ; index of the double store is correctly constrained to not include SP.
     10 
     11 ; CHECK: movsd
     12 
     13 define i32 @main(i32* %i, double %tmpv) {
     14 bb:
     15   br label %bb7
     16 
     17 bb7:                                              ; preds = %bb7, %bb
     18   %storemerge = phi i32 [ 0, %bb ], [ %tmp19, %bb7 ]
     19   %tmp15 = zext i32 %storemerge to i64
     20   %tmp16 = getelementptr inbounds [100000 x double], [100000 x double]* @TheArray, i64 0, i64 %tmp15
     21   store double %tmpv, double* %tmp16, align 8
     22   %tmp18 = load i32, i32* %i, align 4
     23   %tmp19 = add i32 %tmp18, 1
     24   br label %bb7
     25 }
     26