| ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 |
| ; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck %s -check-prefix=LE |
| ; RUN: llc -verify-machineinstrs -mtriple=powerpc64-unknown-linux-gnu < %s | FileCheck %s -check-prefix=BE |
| ; RUN: llc -verify-machineinstrs -mtriple=powerpc-unknown-linux-gnu < %s | FileCheck %s -check-prefix=BE32 |
| ; RUN: llc -verify-machineinstrs -mtriple=powerpc64-ibm-aix-xcoff < %s | FileCheck %s -check-prefix=AIX |
| |
| define i1 @negative(ppc_fp128 nofpclass(nan pinf psub pnorm pzero) %x) { |
| ; LE-LABEL: negative: |
| ; LE: # %bb.0: # %entry |
| ; LE-NEXT: li 3, 1 |
| ; LE-NEXT: blr |
| ; |
| ; BE-LABEL: negative: |
| ; BE: # %bb.0: # %entry |
| ; BE-NEXT: li 3, 1 |
| ; BE-NEXT: blr |
| ; |
| ; BE32-LABEL: negative: |
| ; BE32: # %bb.0: # %entry |
| ; BE32-NEXT: li 3, 1 |
| ; BE32-NEXT: blr |
| ; |
| ; AIX-LABEL: negative: |
| ; AIX: # %bb.0: # %entry |
| ; AIX-NEXT: li 3, 1 |
| ; AIX-NEXT: blr |
| entry: |
| %v = bitcast ppc_fp128 %x to i128 |
| %cmp = icmp slt i128 %v, 0 |
| ret i1 %cmp |
| } |
| |
| define i1 @nonnegative(ppc_fp128 nofpclass(nan ninf nsub nnorm nzero) %x) { |
| ; LE-LABEL: nonnegative: |
| ; LE: # %bb.0: # %entry |
| ; LE-NEXT: li 3, 0 |
| ; LE-NEXT: blr |
| ; |
| ; BE-LABEL: nonnegative: |
| ; BE: # %bb.0: # %entry |
| ; BE-NEXT: li 3, 0 |
| ; BE-NEXT: blr |
| ; |
| ; BE32-LABEL: nonnegative: |
| ; BE32: # %bb.0: # %entry |
| ; BE32-NEXT: li 3, 0 |
| ; BE32-NEXT: blr |
| ; |
| ; AIX-LABEL: nonnegative: |
| ; AIX: # %bb.0: # %entry |
| ; AIX-NEXT: li 3, 0 |
| ; AIX-NEXT: blr |
| entry: |
| %v = bitcast ppc_fp128 %x to i128 |
| %cmp = icmp slt i128 %v, 0 |
| ret i1 %cmp |
| } |