From 4fc5273a4932590b3824a82db6f77ff42a48ef81 Mon Sep 17 00:00:00 2001 From: Saleem Abdulrasool Date: Sun, 4 May 2014 23:13:18 +0000 Subject: [PATCH] CodeGen: strengthen WoA AEABI avoidance tests Add additional test cases for WoA AEABI avoidance checking. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@207942 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/ARM/Windows/no-aeabi.ll | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test/CodeGen/ARM/Windows/no-aeabi.ll b/test/CodeGen/ARM/Windows/no-aeabi.ll index 4c6676f2df0..3971b9ccf58 100644 --- a/test/CodeGen/ARM/Windows/no-aeabi.ll +++ b/test/CodeGen/ARM/Windows/no-aeabi.ll @@ -1,5 +1,27 @@ ; RUN: llc -mtriple=thumbv7-windows-itanium -mcpu=cortex-a9 -o - %s | FileCheck %s +declare void @llvm.memmove.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind +declare void @llvm.memcpy.p0i8.p0i8.i32(i8* nocapture, i8* nocapture, i32, i32, i1) nounwind + +@source = common global [512 x i8] zeroinitializer, align 4 +@target = common global [512 x i8] zeroinitializer, align 4 + +define void @move() nounwind { +entry: + call void @llvm.memmove.p0i8.p0i8.i32(i8* bitcast ([512 x i8]* @target to i8*), i8* bitcast ([512 x i8]* @source to i8*), i32 512, i32 0, i1 false) + unreachable +} + +; CHECK-NOT: __aeabi_memmove + +define void @copy() nounwind { +entry: + call void @llvm.memcpy.p0i8.p0i8.i32(i8* bitcast ([512 x i8]* @target to i8*), i8* bitcast ([512 x i8]* @source to i8*), i32 512, i32 0, i1 false) + unreachable +} + +; CHECK-NOT: __aeabi_memcpy + define i32 @divide(i32 %i, i32 %j) nounwind { entry: %quotient = sdiv i32 %i, %j