From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 98810 invoked by alias); 24 May 2017 09:29:57 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 98787 invoked by uid 89); 24 May 2017 09:29:56 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy= X-HELO: mail-wm0-f50.google.com Received: from mail-wm0-f50.google.com (HELO mail-wm0-f50.google.com) (74.125.82.50) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 24 May 2017 09:29:55 +0000 Received: by mail-wm0-f50.google.com with SMTP id b84so57374040wmh.0 for ; Wed, 24 May 2017 02:29:58 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=2jpsGO2tZgPcTqL7f2vJT+JtbXFPLQiRNUhFEg3Ge+M=; b=T+ZOyQO84IECcl14qT4eF+iEu3SRx7LEBQNIhagctJ5mN8Sc73sxH08WPRxrKu5GVK +b93sELwI61VTW1CHnClLnFjsf/r0NyxwI80x4CofwNAv/CqAVaZk42hDh0RlftSfo90 8RVuDLSr/uZIa81y7o9dUbx6vKgizs9WQryluyJ9FSfyB7hpdVKhEH9rPxSf6LTUgwm8 P98t/kJti10lB4p49ywKZKLMeKmxNQIEWzsg8lafSS2pq6dCSeREX4RV+ABCIg1i13An jiFIDRfe0+Ebbm+bvOT+ErhFyjvGLP1+b+ZjQuwJY+WQ97dVqTQ1YpncfMdPKdGR/S1y qcaw== X-Gm-Message-State: AODbwcD3ZWSM2+8ku66VUUPbbI1h5nivl2MG+0/+Ol1yWvQaqVH3uXd9 aYy+2LzBm2d5mQfyCTBVDA== X-Received: by 10.223.163.222 with SMTP id m30mr21399189wrb.24.1495618196911; Wed, 24 May 2017 02:29:56 -0700 (PDT) Received: from [192.168.0.102] ([37.189.166.198]) by smtp.gmail.com with ESMTPSA id a197sm3261762wma.1.2017.05.24.02.29.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 24 May 2017 02:29:56 -0700 (PDT) Subject: Re: [PATCH 3/11] Add MIPS_MAX_REGISTER_SIZE (2/4) To: Alan Hayward References: <3C00280E-37C9-4C0A-9DA6-F3B9DB1A6E8F@arm.com> <86y3v7uf9j.fsf@gmail.com> <806B436F-EFA1-4200-AC54-9036D166C9B9@arm.com> <867f1m8nhm.fsf@gmail.com> <8637bx9jsw.fsf@gmail.com> <78A7E8EA-7203-44DF-B7FD-63E75A5ECEF5@arm.com> <540372d8-efc3-f842-5cac-cd813bacc3f5@redhat.com> <4F90CD36-759D-4BDA-BFEC-8DD86F44A0B7@arm.com> Cc: Yao Qi , "gdb-patches@sourceware.org" , nd From: Pedro Alves Message-ID: <1c287c1e-c49a-76e8-e11e-205dd9653215@redhat.com> Date: Wed, 24 May 2017 09:29:00 -0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-SW-Source: 2017-05/txt/msg00520.txt.bz2 On 05/24/2017 10:07 AM, Alan Hayward wrote: > /* Copy COPY_LEN bytes from SOURCE to DEST, then sign extend or zero extend > to FILL_LEN bytes. */ > void copy_and_fill_to_size (const gdb_byte *dest, const gdb_byte *source, > int copy_len, int fill_len, bool is_signed, > enum bfd_endian byte_order) > { > signed int len_diff = fill_len - copy_len; > gdb_assert (len_diff >= 0); > > if (byte_order == BFD_ENDIAN_BIG) > memcpy (dest+len_diff, source, copy_len); > else > memcpy (dest, source, copy_len); Note here I was thinking you'd need to handle truncation as well. I.e., only copy fill_len bytes when fill_len is narrower than copy_len. So I'd probably rename copy_len/fill_len to dest_len/source_len to match 'dest' and 'source', and name the function something else that doesn't have "fill" in it. Thanks, Pedro Alves