From patchwork Fri Aug 15 02:30:27 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: DJ Delorie X-Patchwork-Id: 380057 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org 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 776D31400DE for ; Fri, 15 Aug 2014 12:30:47 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :message-id:from:to:subject; q=dns; s=default; b=IgXPrKdjVu5OtBz Dn0Jvrg9uJK3Omd+4NzfYemtmY073TYOAw/hyyg5WLW/zKgvh9yeiNISP7jUIkWS FDBHWdShqdI2u0KvXSdgWXe+02YcWw7zXX5eb/LEudZ02Z6IeGwXnZbG4oufu/9G eiVf6izVKA9lQogmuWKpYDDz4ZhI= 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:date :message-id:from:to:subject; s=default; bh=Kt5ToXZSV02hgKJ5BczEP 9W6FpU=; b=tQTTyhzSf5hJWYWk4kc6KO13/VWYREllkGupgi6yTVFW+92sHOsqg JAbQsUGHHjmC3DVm1bQi9eMI32qAdJwX3kFNJKk5iB8P0EmRLUWDexB91TwVkZOW dBoiKzYPn3xx6onMIvkmtKKemSFpYTe8bPEXK0Nq4q3Ff6FW1rfYn8= Received: (qmail 31647 invoked by alias); 15 Aug 2014 02:30:39 -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 31604 invoked by uid 89); 15 Aug 2014 02:30:33 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, SPF_HELO_PASS, SPF_PASS autolearn=ham version=3.3.2 X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 15 Aug 2014 02:30:31 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s7F2UT1I012698 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 14 Aug 2014 22:30:29 -0400 Received: from greed.delorie.com (ovpn-113-70.phx2.redhat.com [10.3.113.70]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s7F2UScf009887 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Thu, 14 Aug 2014 22:30:29 -0400 Received: from greed.delorie.com (greed.delorie.com [127.0.0.1]) by greed.delorie.com (8.14.4/8.14.4) with ESMTP id s7F2USLm002961 for ; Thu, 14 Aug 2014 22:30:28 -0400 Received: (from dj@localhost) by greed.delorie.com (8.14.4/8.14.4/Submit) id s7F2URIF002960; Thu, 14 Aug 2014 22:30:27 -0400 Date: Thu, 14 Aug 2014 22:30:27 -0400 Message-Id: <201408150230.s7F2URIF002960@greed.delorie.com> From: DJ Delorie To: gcc-patches@gcc.gnu.org Subject: [rl78] disable umul for G10 X-IsSubscribed: yes The G10 family doesn't support this opcode. Committed. * config/rl78/rl78-expand.md (umulqihi3): Disable for G10. * config/rl78/rl78-virt.md (umulhi3_shift_virt): Likewise. (umulqihi3_virt): Likewise. * config/rl78/rl78-real.md (umulhi3_shift_real): Likewise. (umulqihi3_real): Likewise. Index: config/rl78/rl78-expand.md =================================================================== --- config/rl78/rl78-expand.md (revision 213995) +++ config/rl78/rl78-expand.md (working copy) @@ -145,8 +145,8 @@ [(set (match_operand:HI 0 "register_operand") (mult:HI (zero_extend:HI (match_operand:QI 1 "register_operand")) (zero_extend:HI (match_operand:QI 2 "register_operand"))))] + "!TARGET_G10" "" - "" ) (define_expand "andqi3" Index: config/rl78/rl78-real.md =================================================================== --- config/rl78/rl78-real.md (revision 213995) +++ config/rl78/rl78-real.md (working copy) @@ -157,7 +157,7 @@ [(set (match_operand:HI 0 "register_operand" "=A,A") (mult:HI (match_operand:HI 1 "rl78_nonfar_operand" "0,0") (match_operand:HI 2 "rl78_24_operand" "N,i")))] - "rl78_real_insns_ok ()" + "rl78_real_insns_ok () && !TARGET_G10" "@ shlw\t%0, 1 shlw\t%0, 2" @@ -167,7 +167,7 @@ [(set (match_operand:HI 0 "nonimmediate_operand" "=A") (mult:HI (zero_extend:HI (match_operand:QI 1 "general_operand" "%a")) (zero_extend:HI (match_operand:QI 2 "general_operand" "x"))))] - "rl78_real_insns_ok ()" + "rl78_real_insns_ok () && !TARGET_G10" "mulu\t%2" ) Index: config/rl78/rl78-virt.md =================================================================== --- config/rl78/rl78-virt.md (revision 213995) +++ config/rl78/rl78-virt.md (working copy) @@ -91,7 +91,7 @@ [(set (match_operand:HI 0 "register_operand" "=vm") (mult:HI (match_operand:HI 1 "rl78_nonfar_operand" "%vim") (match_operand:HI 2 "rl78_24_operand" "Ni")))] - "rl78_virt_insns_ok ()" + "rl78_virt_insns_ok () && !TARGET_G10" "v.mulu\t%0, %1, %2" [(set_attr "valloc" "umul")] ) @@ -100,7 +100,7 @@ [(set (match_operand:HI 0 "register_operand" "=vm") (mult:HI (zero_extend:HI (match_operand:QI 1 "rl78_nonfar_operand" "%vim")) (zero_extend:HI (match_operand:QI 2 "general_operand" "vim"))))] - "rl78_virt_insns_ok ()" + "rl78_virt_insns_ok () && !TARGET_G10" "v.mulu\t%0, %2" [(set_attr "valloc" "umul")] )