From da4841b3a90c19de590e99cb130f9dcc6babc970 Mon Sep 17 00:00:00 2001 From: Benjamin Kramer Date: Sat, 26 Apr 2014 23:09:49 +0000 Subject: DAGCombiner: Simplify code a bit, make more transforms work with vectors. llvm-svn: 207338 --- llvm/test/CodeGen/X86/vector-idiv.ll | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) (limited to 'llvm/test/CodeGen/X86/vector-idiv.ll') diff --git a/llvm/test/CodeGen/X86/vector-idiv.ll b/llvm/test/CodeGen/X86/vector-idiv.ll index 06af3434b1a..3b300f74061 100644 --- a/llvm/test/CodeGen/X86/vector-idiv.ll +++ b/llvm/test/CodeGen/X86/vector-idiv.ll @@ -151,3 +151,38 @@ define <8 x i32> @test9(<8 x i32> %a) { ; AVX: vpsrad $2 ; AVX: vpadd } + +define <8 x i32> @test10(<8 x i32> %a) { + %rem = urem <8 x i32> %a, + ret <8 x i32> %rem + +; AVX-LABEL: test10: +; AVX: vpermd +; AVX: vpmuludq +; AVX: vshufps $-35 +; AVX: vpmuludq +; AVX: vshufps $-35 +; AVX: vpsubd +; AVX: vpsrld $1 +; AVX: vpadd +; AVX: vpsrld $2 +; AVX: vpmulld +} + +define <8 x i32> @test11(<8 x i32> %a) { + %rem = srem <8 x i32> %a, + ret <8 x i32> %rem + +; AVX-LABEL: test11: +; AVX: vpermd +; AVX: vpmuldq +; AVX: vshufps $-35 +; AVX: vpmuldq +; AVX: vshufps $-35 +; AVX: vpshufd $-40 +; AVX: vpadd +; AVX: vpsrld $31 +; AVX: vpsrad $2 +; AVX: vpadd +; AVX: vpmulld +} -- cgit v1.2.3