[llvm-commits] [llvm] r89295 - /llvm/trunk/test/CodeGen/X86/unaligned-load.ll

Bill Wendling isanbard at gmail.com
Wed Dec 2 14:01:08 PST 2009


On Dec 1, 2009, at 1:52 PM, Chris Lattner wrote:

> On Nov 18, 2009, at 5:33 PM, Bill Wendling wrote:
>
>> Author: void
>> Date: Wed Nov 18 19:33:57 2009
>> New Revision: 89295
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=89295&view=rev
>> Log:
>> Test from Dhrystone to make sure that we're not emitting an aligned
>> load for a
>> string that's aligned at 8-bytes instead of 16-bytes.
>
> Why do you need the 'not grep'?  Isn't the check for movups enough?
>
Perhaps. I'd rather be safe than sorry. But if people feel it's not  
necessary, then I can remove the check.

-bw

> -Chris
>
>>
>> Added:
>>   llvm/trunk/test/CodeGen/X86/unaligned-load.ll
>>
>> Added: llvm/trunk/test/CodeGen/X86/unaligned-load.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/unaligned-load.ll?rev=89295&view=auto
>>
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> =
>> = 
>> =====================================================================
>> --- llvm/trunk/test/CodeGen/X86/unaligned-load.ll (added)
>> +++ llvm/trunk/test/CodeGen/X86/unaligned-load.ll Wed Nov 18
>> 19:33:57 2009
>> @@ -0,0 +1,28 @@
>> +; RUN: llc < %s -mtriple=x86_64-apple-darwin10.0 -relocation-
>> model=dynamic-no-pic | not grep {movaps\t_.str3}
>> +; RUN: llc < %s -mtriple=x86_64-apple-darwin10.0 -relocation-
>> model=dynamic-no-pic | FileCheck %s
>> +
>> + at .str1 = internal constant [31 x i8] c"DHRYSTONE PROGRAM, SOME
>> STRING\00", align 8
>> + at .str3 = internal constant [31 x i8] c"DHRYSTONE PROGRAM, 2'ND
>> STRING\00", align 8
>> +
>> +define void @func() nounwind ssp {
>> +entry:
>> +  %String2Loc = alloca [31 x i8], align 1
>> +  br label %bb
>> +
>> +bb:
>> +  %String2Loc9 = getelementptr inbounds [31 x i8]* %String2Loc, i64
>> 0, i64 0
>> +  call void @llvm.memcpy.i64(i8* %String2Loc9, i8* getelementptr
>> inbounds ([31 x i8]* @.str3, i64 0, i64 0), i64 31, i32 1)
>> +; CHECK: movups _.str3
>> +  br label %bb
>> +
>> +return:
>> +  ret void
>> +}
>> +
>> +declare void @llvm.memcpy.i64(i8* nocapture, i8* nocapture, i64,
>> i32) nounwind
>> +
>> +; CHECK: .align  3
>> +; CHECK-NEXT: _.str1:
>> +; CHECK-NEXT: .asciz "DHRYSTONE PROGRAM, SOME STRING"
>> +; CHECK-NEXT: .align 3
>> +; CHECK-NEXT: _.str3:
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list