forked from OSchip/llvm-project
[RISCV] Add +experimental-zvfh extension to cover half types in vectors.
Currently we allow half types in vectors if the scalar Zfh extension is enabled. This behavior is not inline with the vector spec. For f32 and f64 types, the Zve32f, Zve64f, Zve64d, and V explicitly control the availablity of floating point types in vectors. In order to make our compiler compliant, we either need to remove all support for half in vectors or we need an extension to control it. Draft spec here https://github.com/riscv/riscv-v-spec/pull/780 Reviewed By: kito-cheng Differential Revision: https://reviews.llvm.org/D121345
This commit is contained in:
parent
4869909693
commit
bbd2ecf9f0
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -emit-llvm %s -o - \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -disable-O0-optnone -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -fallow-half-arguments-and-returns -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -emit-llvm %s -o - \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -disable-O0-optnone -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv32 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV32 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone \
|
||||
// RUN: -fallow-half-arguments-and-returns -emit-llvm %s -o - \
|
||||
// RUN: | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d -target-feature +v \
|
||||
// RUN: -target-feature +zfh -disable-O0-optnone -fallow-half-arguments-and-returns -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +zfh -target-feature +v \
|
||||
// RUN: -target-feature +zfh -target-feature +experimental-zvfh -target-feature +v \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s \
|
||||
// RUN: -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
|
||||
// REQUIRES: riscv-registered-target
|
||||
// RUN: %clang_cc1 -triple riscv64 -target-feature +f -target-feature +d \
|
||||
// RUN: -target-feature +v -target-feature +zfh \
|
||||
// RUN: -target-feature +v -target-feature +zfh -target-feature +experimental-zvfh \
|
||||
// RUN: -disable-O0-optnone -emit-llvm %s -o - | opt -S -mem2reg | FileCheck --check-prefix=CHECK-RV64 %s
|
||||
|
||||
#include <riscv_vector.h>
|
||||
|
|
|
@ -142,7 +142,7 @@ using RISCVPredefinedMacroT = uint8_t;
|
|||
enum RISCVPredefinedMacro : RISCVPredefinedMacroT {
|
||||
Basic = 0,
|
||||
V = 1 << 1,
|
||||
Zfh = 1 << 2,
|
||||
Zvfh = 1 << 2,
|
||||
RV64 = 1 << 3,
|
||||
VectorMaxELen64 = 1 << 4,
|
||||
VectorMaxELenFp32 = 1 << 5,
|
||||
|
@ -806,7 +806,7 @@ RVVIntrinsic::RVVIntrinsic(
|
|||
// Init RISC-V extensions
|
||||
for (const auto &T : OutInTypes) {
|
||||
if (T->isFloatVector(16) || T->isFloat(16))
|
||||
RISCVPredefinedMacros |= RISCVPredefinedMacro::Zfh;
|
||||
RISCVPredefinedMacros |= RISCVPredefinedMacro::Zvfh;
|
||||
if (T->isFloatVector(32))
|
||||
RISCVPredefinedMacros |= RISCVPredefinedMacro::VectorMaxELenFp32;
|
||||
if (T->isFloatVector(64))
|
||||
|
@ -986,7 +986,7 @@ void RVVEmitter::createHeader(raw_ostream &OS) {
|
|||
}
|
||||
}
|
||||
}
|
||||
OS << "#if defined(__riscv_zfh)\n";
|
||||
OS << "#if defined(__riscv_zvfh)\n";
|
||||
for (int Log2LMUL : Log2LMULs) {
|
||||
auto T = computeType('x', Log2LMUL, "v");
|
||||
if (T.hasValue())
|
||||
|
@ -1344,8 +1344,8 @@ bool RVVEmitter::emitMacroRestrictionStr(RISCVPredefinedMacroT PredefinedMacros,
|
|||
ListSeparator LS(" && ");
|
||||
if (PredefinedMacros & RISCVPredefinedMacro::V)
|
||||
OS << LS << "defined(__riscv_v)";
|
||||
if (PredefinedMacros & RISCVPredefinedMacro::Zfh)
|
||||
OS << LS << "defined(__riscv_zfh)";
|
||||
if (PredefinedMacros & RISCVPredefinedMacro::Zvfh)
|
||||
OS << LS << "defined(__riscv_zvfh)";
|
||||
if (PredefinedMacros & RISCVPredefinedMacro::RV64)
|
||||
OS << LS << "(__riscv_xlen == 64)";
|
||||
if (PredefinedMacros & RISCVPredefinedMacro::VectorMaxELen64)
|
||||
|
|
|
@ -104,6 +104,7 @@ static const RISCVSupportedExtension SupportedExperimentalExtensions[] = {
|
|||
{"zbp", RISCVExtensionVersion{0, 93}},
|
||||
{"zbr", RISCVExtensionVersion{0, 93}},
|
||||
{"zbt", RISCVExtensionVersion{0, 93}},
|
||||
{"zvfh", RISCVExtensionVersion{0, 1}},
|
||||
};
|
||||
|
||||
static bool stripExperimentalPrefix(StringRef &Ext) {
|
||||
|
@ -723,6 +724,13 @@ Error RISCVISAInfo::checkDependency() {
|
|||
errc::invalid_argument,
|
||||
"zve64d requires d or zdinx extension to also be specified");
|
||||
|
||||
if (Exts.count("zvfh") && !Exts.count("zfh") && !Exts.count("zfhmin") &&
|
||||
!Exts.count("zhinx") && !Exts.count("zhinxmin"))
|
||||
return createStringError(
|
||||
errc::invalid_argument,
|
||||
"zvfh requires zfh, zfhmin, zhinx or zhinxmin extension to also be "
|
||||
"specified");
|
||||
|
||||
if (HasZvl && !HasVector)
|
||||
return createStringError(
|
||||
errc::invalid_argument,
|
||||
|
@ -760,6 +768,7 @@ static const char *ImpliedExtsZvl64b[] = {"zvl32b"};
|
|||
static const char *ImpliedExtsZk[] = {"zkn", "zkt", "zkr"};
|
||||
static const char *ImpliedExtsZkn[] = {"zbkb", "zbkc", "zbkx", "zkne", "zknd", "zknh"};
|
||||
static const char *ImpliedExtsZks[] = {"zbkb", "zbkc", "zbkx", "zksed", "zksh"};
|
||||
static const char *ImpliedExtsZvfh[] = {"zve32f"};
|
||||
|
||||
struct ImpliedExtsEntry {
|
||||
StringLiteral Name;
|
||||
|
@ -788,6 +797,7 @@ static constexpr ImpliedExtsEntry ImpliedExts[] = {
|
|||
{{"zve64d"}, {ImpliedExtsZve64d}},
|
||||
{{"zve64f"}, {ImpliedExtsZve64f}},
|
||||
{{"zve64x"}, {ImpliedExtsZve64x}},
|
||||
{{"zvfh"}, {ImpliedExtsZvfh}},
|
||||
{{"zvl1024b"}, {ImpliedExtsZvl1024b}},
|
||||
{{"zvl128b"}, {ImpliedExtsZvl128b}},
|
||||
{{"zvl16384b"}, {ImpliedExtsZvl16384b}},
|
||||
|
|
|
@ -395,6 +395,11 @@ def HasVInstructionsAnyF : Predicate<"Subtarget->hasVInstructionsAnyF()">,
|
|||
"'V' (Vector Extension for Application Processors), 'Zve32f', "
|
||||
"'Zve64f' or 'Zve64d' (Vector Extensions for Embedded Processors)">;
|
||||
|
||||
def FeatureStdExtZvfh
|
||||
: SubtargetFeature<"experimental-zvfh", "HasStdExtZvfh", "true",
|
||||
"'Zvfh' (Vector Half-Precision Floating-Point)",
|
||||
[FeatureStdExtZve32f]>;
|
||||
|
||||
def Feature64Bit
|
||||
: SubtargetFeature<"64bit", "HasRV64", "true", "Implements RV64">;
|
||||
def IsRV64 : Predicate<"Subtarget->is64Bit()">,
|
||||
|
|
|
@ -82,6 +82,7 @@ private:
|
|||
bool HasStdExtZve64x = false;
|
||||
bool HasStdExtZve64f = false;
|
||||
bool HasStdExtZve64d = false;
|
||||
bool HasStdExtZvfh = false;
|
||||
bool HasStdExtZfhmin = false;
|
||||
bool HasStdExtZfh = false;
|
||||
bool HasStdExtZfinx = false;
|
||||
|
@ -174,6 +175,7 @@ public:
|
|||
bool hasStdExtZbs() const { return HasStdExtZbs; }
|
||||
bool hasStdExtZbt() const { return HasStdExtZbt; }
|
||||
bool hasStdExtZvl() const { return ZvlLen != ExtZvl::NotSet; }
|
||||
bool hasStdExtZvfh() const { return HasStdExtZvfh; }
|
||||
bool hasStdExtZfhmin() const { return HasStdExtZfhmin; }
|
||||
bool hasStdExtZfh() const { return HasStdExtZfh; }
|
||||
bool hasStdExtZfinx() const { return HasStdExtZfinx; }
|
||||
|
@ -224,7 +226,7 @@ public:
|
|||
// Vector codegen related methods.
|
||||
bool hasVInstructions() const { return HasStdExtZve32x; }
|
||||
bool hasVInstructionsI64() const { return HasStdExtZve64x; }
|
||||
bool hasVInstructionsF16() const { return HasStdExtZve32f && HasStdExtZfh; }
|
||||
bool hasVInstructionsF16() const { return HasStdExtZvfh && HasStdExtZfh; }
|
||||
// FIXME: Consider Zfinx in the future
|
||||
bool hasVInstructionsF32() const { return HasStdExtZve32f && HasStdExtF; }
|
||||
// FIXME: Consider Zdinx in the future
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64 -mattr=+v,+f,+d,+zfh -riscv-v-vector-bits-min=128 -riscv-v-fixed-length-vector-lmul-max=1 < %s | FileCheck %s
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64 -mattr=+v,+f,+d,+zfh,+experimental-zvfh -riscv-v-vector-bits-min=128 -riscv-v-fixed-length-vector-lmul-max=1 < %s | FileCheck %s
|
||||
; Check that we don't crash querying costs when vectors are not enabled.
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
; NOTE: Assertions have been autogenerated by utils/update_analyze_test_checks.py
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64 -mattr=+v,+f,+d,+zfh -riscv-v-vector-bits-min=128 -riscv-v-fixed-length-vector-lmul-max=1 < %s | FileCheck %s
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64 -mattr=+v,+f,+d,+zfh,+experimental-zvfh -riscv-v-vector-bits-min=128 -riscv-v-fixed-length-vector-lmul-max=1 < %s | FileCheck %s
|
||||
; Check that we don't crash querying costs when vectors are not enabled.
|
||||
; RUN: opt -passes='print<cost-model>' 2>&1 -disable-output -mtriple=riscv64
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; RUN: opt < %s -mtriple=riscv64 -mattr=+v,+zfh -riscv-v-vector-bits-min=256 -passes='print<cost-model>' -cost-kind=throughput 2>&1 -disable-output | FileCheck %s --check-prefix=FP-REDUCE
|
||||
; RUN: opt < %s -mtriple=riscv64 -mattr=+v,+zfh,+experimental-zvfh -riscv-v-vector-bits-min=256 -passes='print<cost-model>' -cost-kind=throughput 2>&1 -disable-output | FileCheck %s --check-prefix=FP-REDUCE
|
||||
|
||||
define void @reduce_fadd_half() {
|
||||
; FP-REDUCE-LABEL: 'reduce_fadd_half'
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue