From: Simon Pilgrim Date: Sun, 12 Mar 2023 13:11:21 +0000 (+0000) Subject: [X86] and-shift.ll - add gnux32 test coverage to ensure the X32 ABI correctly narrows... X-Git-Tag: upstream/17.0.6~15129 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=84547ec4012ae34b36eb3b86efec8c3a18e55313;p=platform%2Fupstream%2Fllvm.git [X86] and-shift.ll - add gnux32 test coverage to ensure the X32 ABI correctly narrows the i64 shifts --- diff --git a/llvm/test/CodeGen/X86/and-shift.ll b/llvm/test/CodeGen/X86/and-shift.ll index 9626c627..e406a28 100644 --- a/llvm/test/CodeGen/X86/and-shift.ll +++ b/llvm/test/CodeGen/X86/and-shift.ll @@ -1,14 +1,15 @@ ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py -; RUN: llc < %s -mtriple=i386-unknown-unknown | FileCheck %s --check-prefix=X32 -; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64 +; RUN: llc < %s -mtriple=i386-unknown-unknown | FileCheck %s --check-prefixes=X86 +; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefixes=X64 +; RUN: llc < %s -mtriple=x86_64-unknown-gnux32 | FileCheck %s --check-prefixes=X64 define i32 @shift30_and2_i32(i32 %x) { -; X32-LABEL: shift30_and2_i32: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: shrl $30, %eax -; X32-NEXT: andl $-2, %eax -; X32-NEXT: retl +; X86-LABEL: shift30_and2_i32: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: shrl $30, %eax +; X86-NEXT: andl $-2, %eax +; X86-NEXT: retl ; ; X64-LABEL: shift30_and2_i32: ; X64: # %bb.0: @@ -22,13 +23,13 @@ define i32 @shift30_and2_i32(i32 %x) { } define i64 @shift62_and2_i64(i64 %x) { -; X32-LABEL: shift62_and2_i64: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: shrl $30, %eax -; X32-NEXT: andl $-2, %eax -; X32-NEXT: xorl %edx, %edx -; X32-NEXT: retl +; X86-LABEL: shift62_and2_i64: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: shrl $30, %eax +; X86-NEXT: andl $-2, %eax +; X86-NEXT: xorl %edx, %edx +; X86-NEXT: retl ; ; X64-LABEL: shift62_and2_i64: ; X64: # %bb.0: @@ -42,13 +43,13 @@ define i64 @shift62_and2_i64(i64 %x) { } define i64 @shift30_and2_i64(i64 %x) { -; X32-LABEL: shift30_and2_i64: -; X32: # %bb.0: -; X32-NEXT: movl {{[0-9]+}}(%esp), %eax -; X32-NEXT: shrl $30, %eax -; X32-NEXT: andl $-2, %eax -; X32-NEXT: xorl %edx, %edx -; X32-NEXT: retl +; X86-LABEL: shift30_and2_i64: +; X86: # %bb.0: +; X86-NEXT: movl {{[0-9]+}}(%esp), %eax +; X86-NEXT: shrl $30, %eax +; X86-NEXT: andl $-2, %eax +; X86-NEXT: xorl %edx, %edx +; X86-NEXT: retl ; ; X64-LABEL: shift30_and2_i64: ; X64: # %bb.0: