blob: 77c21c5be91a7dc3c0f73ea401b923e6385aed9b [file] [log] [blame]
Bob Wilson4c65c502012-08-08 20:31:37 +00001; RUN: llc < %s -mtriple=arm-apple-ios -mattr=+vfp2 | FileCheck %s -check-prefix=VFP2
2; RUN: llc < %s -mtriple=arm-apple-ios -mattr=+neon | FileCheck %s -check-prefix=NFP0
3; RUN: llc < %s -mtriple=arm-apple-ios -mcpu=cortex-a8 | FileCheck %s -check-prefix=CORTEXA8
4; RUN: llc < %s -mtriple=arm-apple-ios -mcpu=cortex-a9 | FileCheck %s -check-prefix=CORTEXA9
David Goodwin30bf6252009-08-04 20:39:05 +00005
6define float @test(float %a, float %b) {
7entry:
8 %dum = fadd float %a, %b
Bob Wilson874886c2012-08-03 23:29:17 +00009 %0 = tail call float @fabsf(float %dum) readnone
David Goodwin30bf6252009-08-04 20:39:05 +000010 %dum1 = fadd float %0, %b
11 ret float %dum1
12}
13
14declare float @fabsf(float)
Edward O'Callaghan21d7e8a2009-11-22 14:23:33 +000015
Stephen Linf799e3f2013-07-13 20:38:47 +000016; VFP2-LABEL: test:
Jakob Stoklund Olesenac6cfa42013-01-19 00:03:32 +000017; VFP2: vabs.f32 s
Edward O'Callaghan21d7e8a2009-11-22 14:23:33 +000018
Stephen Linf799e3f2013-07-13 20:38:47 +000019; NFP1-LABEL: test:
Jakob Stoklund Olesenac6cfa42013-01-19 00:03:32 +000020; NFP1: vabs.f32 d
Stephen Linf799e3f2013-07-13 20:38:47 +000021; NFP0-LABEL: test:
Jakob Stoklund Olesenac6cfa42013-01-19 00:03:32 +000022; NFP0: vabs.f32 s
Edward O'Callaghan21d7e8a2009-11-22 14:23:33 +000023
Stephen Linf799e3f2013-07-13 20:38:47 +000024; CORTEXA8-LABEL: test:
Jakob Stoklund Olesen53910d62011-08-09 18:19:41 +000025; CORTEXA8: vadd.f32 [[D1:d[0-9]+]]
26; CORTEXA8: vabs.f32 {{d[0-9]+}}, [[D1]]
27
Stephen Linf799e3f2013-07-13 20:38:47 +000028; CORTEXA9-LABEL: test:
Bob Wilsondf612ba2011-04-19 18:11:45 +000029; CORTEXA9: vabs.f32 s{{.}}, s{{.}}