Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754845AbbLJPfW (ORCPT ); Thu, 10 Dec 2015 10:35:22 -0500 Received: from mail-vk0-f50.google.com ([209.85.213.50]:33926 "EHLO mail-vk0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754111AbbLJPfT (ORCPT ); Thu, 10 Dec 2015 10:35:19 -0500 MIME-Version: 1.0 In-Reply-To: References: <1449712366-31365-1-git-send-email-geyslan@gmail.com> <87twnqjpzy.fsf@saruman.tx.rr.com> <063D6719AE5E284EB5DD2968C1650D6D1CBEA973@AcuExch.aculab.com> Date: Thu, 10 Dec 2015 12:35:18 -0300 Message-ID: Subject: Re: [PATCH] usb: remove redundant conditions From: "Geyslan G. Bem" To: David Laight Cc: Felipe Balbi , "peter.senna@gmail.com" , Greg Kroah-Hartman , Johan Hovold , Robert Baldyga , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1792 Lines: 74 2015-12-10 12:29 GMT-03:00 Geyslan G. Bem : > 2015-12-10 12:17 GMT-03:00 David Laight : >> From: Felipe Balbi >>> Sent: 10 December 2015 15:14 >>> "Geyslan G. Bem" writes: >>> >>> > This patch removes redundant conditions. >>> > >>> > - (!A || (A && B)) is the same as (!A || B). >>> > - (length && length > 5) can be reduced to a single evaluation. >>> > >>> > Caught by: cppcheck >>> > >>> > Signed-off-by: Geyslan G. Bem >>> > --- >>> >>> I guess you didn't get previous comment in time; let's split this per >>> driver so different maintainers can pick their parts. >> >> I also suspect that gcc will optimise out the redundant checks as well. > Yes, David. it will. > > Let's see. > > void f(int f, int s) > { > if (!f || (f && s)) > printf("branch\n"); > } > > Generates without optimization three comparisons: > > cmpl $0, -4(%rbp) > je .L2 > cmpl $0, -4(%rbp) > je .L4 > cmpl $0, -8(%rbp) > je .L4 > > But with -O2 it generates only two: > > testl %edi, %edi > je .L2 > testl %esi, %esi > je .L1 > > Despite that, I think that the patches are welcome since they silence > checkpatch and make code clearer. Don't you think? Sorry, silence "cppcheck". I'm mistaking the tool name. > >> >> David >> > > > > -- > Regards, > > Geyslan G. Bem > hackingbits.com -- Regards, Geyslan G. Bem hackingbits.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/