From patchwork Wed Jul 3 06:52:58 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paul Hua X-Patchwork-Id: 1126635 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-504246-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=gmail.com Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 45dsJR1Z0lz9sLt for ; Wed, 3 Jul 2019 16:53:22 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:from:date:message-id:subject:to:cc:content-type; q=dns; s=default; b=yce76wyR8XZ4Ht3cjX6bnFHtGQ4uLNFV1TNkXKrV9GK nhWsDA3CPjGZHNzCOMKN1MOyWGBJtSCB2gmLeje13bbxfHzS1fOSSmyJlbxOl4Hk tKapv38ORS704QfjmqQ4XXUSea3FCjjPHvd+5wAFAfOWizKaM32rf+eXTHDphF0M = DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:from:date:message-id:subject:to:cc:content-type; s=default; bh=+dItYXDfaYEAeLXp1QJ2pcmLSrM=; b=EEdCtppyVE+lOvmTd BCMuwLKK60RFdWBB1vUtZHqAZuM3xj2mlzBSwEJFnkRDWZUS65xIHPKoB02upLqt zKcrVw/74LM33S72BJ0yqX7gjFKN9FnC1pKY1NEyG/tN3V4XqC5INJGEZ6UL2vNf xCtXO6A0TN9FlmvgBc86bS0GaE= Received: (qmail 62222 invoked by alias); 3 Jul 2019 06:53:13 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 62214 invoked by uid 89); 3 Jul 2019 06:53:13 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-22.6 required=5.0 tests=AWL, BAYES_00, FREEMAIL_FROM, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RCVD_IN_DNSWL_NONE, SPF_PASS autolearn=ham version=3.3.1 spammy=__asm__ X-HELO: mail-io1-f41.google.com Received: from mail-io1-f41.google.com (HELO mail-io1-f41.google.com) (209.85.166.41) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 03 Jul 2019 06:53:11 +0000 Received: by mail-io1-f41.google.com with SMTP id u19so2207501ior.9 for ; Tue, 02 Jul 2019 23:53:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to:cc; bh=HXIAWdo7vuCpcW9CiybOtz5mdAoWt0SRv4Jgxh2OndY=; b=rxAIhlts5rxPZ1jjzFzk2HdHHLQYdvlhYrrZxTQYga+JiDygntQTY4EU/tub5GzNEB qdCLHpGkxWNVcisek5kusNLNIBHVy3Nl2myAGtYOfCRXNvirMKsaEGQ0Iotf8PD2VL2P uw5PU+UFljn3+jddmoepla51a5OGuDRJb/K0Bc35E1aNoTMwWO7nDHeED/Kd4Ne7VLM6 io+TgTasr57CakBijgVyjgBuPMvlq0IaThzgDU6huYm3G1TFALzazty/KjhtyE4EWZYG 29HSFHU/xkz/BbZVCnUkrvY1FfwvECsFdc4YfXUGPrgts4JiMBb33udt8pvqqc047CoY SaMw== MIME-Version: 1.0 From: Paul Hua Date: Wed, 3 Jul 2019 14:52:58 +0800 Message-ID: Subject: [MIPS][Testsuite] specify msa-fmadd.c abis To: gcc-patches Cc: "Jeff Law (law@redhat.com)" , Matthew Fortune X-IsSubscribed: yes Hi, The msa-fmadd.c fails on abi=64, the attached patch fixed by specify the abis. spawn -ignore SIGHUP /home/xuchenghua/GCC/test/gcc-r272929_obj/gcc/xgcc -B/home/xuchenghua/GCC/test/gcc-r272929_obj/gcc/ /home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/msa-fmadd.c -fno-diagnostics-show-caret -fno-diagnostics-show-line-numbers -fdiagnostics-color=never -O1 -DNOMIPS16=__attribute__((nomips16)) -DNOMICROMIPS=__attribute__((nomicromips)) -DNOCOMPRESSION=__attribute__((nocompression)) -EL -mhard-float -mdouble-float -mfp64 -mno-mips16 -modd-spreg -mmsa -flax-vector-conversions -ffat-lto-objects -fno-ident -S -o msa-fmadd.s^M /home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/msa-fmadd.c:11:16: warning: call-clobbered register used for global register variable^M /home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/msa-fmadd.c:12:16: warning: call-clobbered register used for global register variable^M FAIL: gcc.target/mips/msa-fmadd.c -O1 (test for excess errors) Excess errors: /home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/msa-fmadd.c:11:16: warning: call-clobbered register used for global register variable /home/xuchenghua/GCC/gcc_git_trunk/gcc/testsuite/gcc.target/mips/msa-fmadd.c:12:16: warning: call-clobbered register used for global register variable Ok for commit ? From 912581f71ad37b415aec06d23210109e1c778296 Mon Sep 17 00:00:00 2001 From: Chenghua Xu Date: Mon, 17 Jun 2019 14:36:37 +0800 Subject: [PATCH] [MIPS][Testsuite] specify msa-fmadd.c abis. gcc/testsuite/ * gcc.target/mips/mips-fmadd.c: Rename to ... * gcc.target/mips/mips-fmadd-o32.c: ... Here; add abi=32. * gcc.target/mips/mips-fmadd-n64.c: New. --- gcc/testsuite/gcc.target/mips/msa-fmadd-n64.c | 101 +++++++++++++++++++++ .../mips/{msa-fmadd.c => msa-fmadd-o32.c} | 2 +- 2 files changed, 102 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gcc.target/mips/msa-fmadd-n64.c rename gcc/testsuite/gcc.target/mips/{msa-fmadd.c => msa-fmadd-o32.c} (96%) diff --git a/gcc/testsuite/gcc.target/mips/msa-fmadd-n64.c b/gcc/testsuite/gcc.target/mips/msa-fmadd-n64.c new file mode 100644 index 00000000000..199b366512c --- /dev/null +++ b/gcc/testsuite/gcc.target/mips/msa-fmadd-n64.c @@ -0,0 +1,101 @@ +/* { dg-do compile } */ +/* { dg-options "-mabi=64 -mfp64 -mhard-float -mmsa -EL -flax-vector-conversions" } */ +/* { dg-skip-if "uses global registers" { *-*-* } { "-O0" } { "" } } */ + +typedef int v4i32 __attribute__ ((vector_size(16))); +typedef float v4f32 __attribute__ ((vector_size(16))); +typedef double v2f64 __attribute__ ((vector_size(16))); + +/* Test that MSA FMADD-like intrinsics do not use first operand for multiplication. */ + +register v4i32 a __asm__("$f24"); +register v4i32 b __asm__("$f25"); +register v4f32 c __asm__("$f26"); +register v4f32 d __asm__("$f27"); +register v2f64 e __asm__("$f28"); +register v2f64 f __asm__("$f29"); + +void +maddv_b_msa (void) +{ + a = __builtin_msa_maddv_b (a, b, b); +} +/* { dg-final { scan-assembler "maddv\\\.b\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +maddv_h_msa (void) +{ + a = __builtin_msa_maddv_h (a, b, b); +} +/* { dg-final { scan-assembler "maddv\\\.h\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +maddv_w_msa (void) +{ + a = __builtin_msa_maddv_w (a, b, b); +} +/* { dg-final { scan-assembler "maddv\\\.w\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +maddv_d_msa (void) +{ + a = __builtin_msa_maddv_d (a, b, b); +} +/* { dg-final { scan-assembler "maddv\\\.d\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +msubv_b_msa (void) +{ + a = __builtin_msa_msubv_b (a, b, b); +} +/* { dg-final { scan-assembler "msubv\\\.b\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +msubv_h_msa (void) +{ + a = __builtin_msa_msubv_h (a, b, b); +} +/* { dg-final { scan-assembler "msubv\\\.h\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +msubv_w_msa (void) +{ + a = __builtin_msa_msubv_w (a, b, b); +} +/* { dg-final { scan-assembler "msubv\\\.w\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +msubv_d_msa (void) +{ + a = __builtin_msa_msubv_d (a, b, b); +} +/* { dg-final { scan-assembler "msubv\\\.d\t\\\$w24,\\\$w25,\\\$w25" } } */ + +void +fmadd_w_msa (void) +{ + c = __builtin_msa_fmadd_w (c, d, d); +} +/* { dg-final { scan-assembler "fmadd\\\.w\t\\\$w26,\\\$w27,\\\$w27" } } */ + +void +fmadd_d_msa (void) +{ + e = __builtin_msa_fmadd_d (e, f, f); +} +/* { dg-final { scan-assembler "fmadd\\\.d\t\\\$w28,\\\$w29,\\\$w29" } } */ + +void +fmsub_w_msa (void) +{ + c = __builtin_msa_fmsub_w (c, d, d); +} +/* { dg-final { scan-assembler "fmsub\\\.w\t\\\$w26,\\\$w27,\\\$w27" } } */ + +void +fmsub_d_msa (void) +{ + e = __builtin_msa_fmsub_d (e, f, f); +} +/* { dg-final { scan-assembler "fmsub\\\.d\t\\\$w28,\\\$w29,\\\$w29" } } */ + diff --git a/gcc/testsuite/gcc.target/mips/msa-fmadd.c b/gcc/testsuite/gcc.target/mips/msa-fmadd-o32.c similarity index 96% rename from gcc/testsuite/gcc.target/mips/msa-fmadd.c rename to gcc/testsuite/gcc.target/mips/msa-fmadd-o32.c index 9265c04ff9c..843336990e4 100644 --- a/gcc/testsuite/gcc.target/mips/msa-fmadd.c +++ b/gcc/testsuite/gcc.target/mips/msa-fmadd-o32.c @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-mfp64 -mhard-float -mmsa -EL -flax-vector-conversions" } */ +/* { dg-options "-mabi=32 -mfp64 -mhard-float -mmsa -EL -flax-vector-conversions" } */ /* { dg-skip-if "uses global registers" { *-*-* } { "-O0" } { "" } } */ typedef int v4i32 __attribute__ ((vector_size(16))); -- 2.11.0