From: Ben Peart <Ben.Peart@microsoft.com>
To: "Martin Ågren" <martin.agren@gmail.com>
Cc: "David Turner" <David.Turner@twosigma.com>,
"Ævar Arnfjörð Bjarmason" <avarab@gmail.com>,
"Christian Couder" <christian.couder@gmail.com>,
"git@vger.kernel.org" <git@vger.kernel.org>,
"Junio C Hamano" <gitster@pobox.com>,
"Johannes Schindelin" <johannes.schindelin@gmx.de>,
"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
"Jeff King" <peff@peff.net>
Subject: RE: [PATCH v8 01/12] bswap: add 64 bit endianness helper get_be64
Date: Sat, 23 Sep 2017 23:31:50 +0000 [thread overview]
Message-ID: <MWHPR21MB047887A575D5DFFB213092A1F4640@MWHPR21MB0478.namprd21.prod.outlook.com> (raw)
In-Reply-To: <20170922233707.25414-1-martin.agren@gmail.com>
Thanks,
Ben
> -----Original Message-----
> From: Martin Ågren [mailto:martin.agren@gmail.com]
> Sent: Friday, September 22, 2017 7:37 PM
> To: Ben Peart <Ben.Peart@microsoft.com>
> Cc: David Turner <David.Turner@twosigma.com>; Ævar Arnfjörð Bjarmason
> <avarab@gmail.com>; Christian Couder <christian.couder@gmail.com>;
> git@vger.kernel.org; Junio C Hamano <gitster@pobox.com>; Johannes
> Schindelin <johannes.schindelin@gmx.de>; Nguyễn Thái Ngọc Duy
> <pclouds@gmail.com>; Jeff King <peff@peff.net>
> Subject: Re: [PATCH v8 01/12] bswap: add 64 bit endianness helper get_be64
>
> On 22 September 2017 at 18:35, Ben Peart <benpeart@microsoft.com>
> wrote:
> > Add a new get_be64 macro to enable 64 bit endian conversions on memory
> > that may or may not be aligned.
>
> I needed this to compile and pass the tests with NO_UNALIGNED_LOADS.
>
> Martin
>
> diff --git a/compat/bswap.h b/compat/bswap.h index 6b22c4621..9dc79bdf5
> 100644
> --- a/compat/bswap.h
> +++ b/compat/bswap.h
> @@ -183,8 +183,8 @@ static inline uint32_t get_be32(const void *ptr) static
> inline uint64_t get_be64(const void *ptr) {
> const unsigned char *p = ptr;
> - return (uint64_t)get_be32(p[0]) << 32 |
> - (uint64_t)get_be32(p[4]) << 0;
> + return (uint64_t)get_be32(p + 0) << 32 |
> + (uint64_t)get_be32(p + 4) << 0;
This is surprising. Every other function in the file uses the p[x] syntax. Just for
consistency, is there a way to stick to that syntax but still make it work correctly?
Is there a typecast that can make it work?
> }
>
> static inline void put_be32(void *ptr, uint32_t value)
> --
> 2.14.1.727.g9ddaf86
next prev parent reply other threads:[~2017-09-23 23:31 UTC|newest]
Thread overview: 137+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-10 13:40 [PATCH v5 0/7] Fast git status via a file system watcher Ben Peart
2017-06-10 13:40 ` [PATCH v5 1/7] bswap: add 64 bit endianness helper get_be64 Ben Peart
2017-06-10 13:40 ` [PATCH v5 2/7] dir: make lookup_untracked() available outside of dir.c Ben Peart
2017-06-10 13:40 ` [PATCH v5 3/7] fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files Ben Peart
2017-06-27 15:43 ` Christian Couder
2017-07-03 21:25 ` Ben Peart
2017-06-10 13:40 ` [PATCH v5 4/7] fsmonitor: add test cases for fsmonitor extension Ben Peart
2017-06-27 16:20 ` Christian Couder
2017-07-07 18:50 ` Ben Peart
2017-06-10 13:40 ` [PATCH v5 5/7] fsmonitor: add documentation for the " Ben Peart
2017-06-10 13:40 ` [PATCH v5 6/7] fsmonitor: add a sample query-fsmonitor hook script for Watchman Ben Peart
2017-06-10 13:40 ` [PATCH v5 7/7] fsmonitor: add a performance test Ben Peart
2017-06-10 14:04 ` Ben Peart
2017-06-12 22:04 ` Junio C Hamano
2017-06-14 14:12 ` Ben Peart
2017-06-14 18:36 ` Junio C Hamano
2017-07-07 18:14 ` Ben Peart
2017-07-07 18:35 ` Junio C Hamano
2017-07-07 19:07 ` Ben Peart
2017-07-07 19:33 ` David Turner
2017-07-08 7:19 ` Christian Couder
2017-06-28 5:11 ` [PATCH v5 0/7] Fast git status via a file system watcher Christian Couder
2017-07-10 13:36 ` Ben Peart
2017-07-10 14:40 ` Ben Peart
2017-09-15 19:20 ` [PATCH v6 00/12] " Ben Peart
2017-09-15 19:20 ` [PATCH v6 01/12] bswap: add 64 bit endianness helper get_be64 Ben Peart
2017-09-15 19:20 ` [PATCH v6 02/12] preload-index: add override to enable testing preload-index Ben Peart
2017-09-15 19:20 ` [PATCH v6 03/12] update-index: add a new --force-write-index option Ben Peart
2017-09-15 19:20 ` [PATCH v6 04/12] fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files Ben Peart
2017-09-15 21:35 ` David Turner
2017-09-18 13:07 ` Ben Peart
2017-09-18 13:32 ` David Turner
2017-09-18 13:49 ` Ben Peart
2017-09-15 19:20 ` [PATCH v6 05/12] fsmonitor: add documentation for the fsmonitor extension Ben Peart
2017-09-15 19:43 ` David Turner
2017-09-18 13:27 ` Ben Peart
2017-09-17 8:03 ` Junio C Hamano
2017-09-18 13:29 ` Ben Peart
2017-09-15 19:20 ` [PATCH v6 06/12] ls-files: Add support in ls-files to display the fsmonitor valid bit Ben Peart
2017-09-15 20:34 ` David Turner
2017-09-15 19:20 ` [PATCH v6 07/12] update-index: add fsmonitor support to update-index Ben Peart
2017-09-15 19:20 ` [PATCH v6 08/12] fsmonitor: add a test tool to dump the index extension Ben Peart
2017-09-17 8:02 ` Junio C Hamano
2017-09-18 13:38 ` Ben Peart
2017-09-18 15:43 ` Torsten Bögershausen
2017-09-18 16:28 ` Ben Peart
2017-09-19 14:16 ` Torsten Bögershausen
2017-09-19 15:36 ` Ben Peart
2017-09-15 19:20 ` [PATCH v6 09/12] split-index: disable the fsmonitor extension when running the split index test Ben Peart
2017-09-19 20:43 ` Jonathan Nieder
2017-09-20 17:11 ` Ben Peart
2017-09-20 17:46 ` Jonathan Nieder
2017-09-21 0:05 ` Ben Peart
2017-09-15 19:20 ` [PATCH v6 10/12] fsmonitor: add test cases for fsmonitor extension Ben Peart
2017-09-15 22:00 ` David Turner
2017-09-19 19:32 ` David Turner
2017-09-19 20:30 ` Ben Peart
2017-09-16 15:27 ` Torsten Bögershausen
2017-09-17 5:43 ` [PATCH v1 1/1] test-lint: echo -e (or -E) is not portable tboegi
2017-09-19 20:37 ` Jonathan Nieder
2017-09-20 13:49 ` Torsten Bögershausen
2017-09-22 1:04 ` Junio C Hamano
2017-09-18 14:06 ` [PATCH v6 10/12] fsmonitor: add test cases for fsmonitor extension Ben Peart
2017-09-17 4:47 ` Junio C Hamano
2017-09-18 15:25 ` Ben Peart
2017-09-19 20:34 ` Jonathan Nieder
2017-09-15 19:20 ` [PATCH v6 11/12] fsmonitor: add a sample integration script for Watchman Ben Peart
2017-09-15 19:20 ` [PATCH v6 12/12] fsmonitor: add a performance test Ben Peart
2017-09-15 21:56 ` David Turner
2017-09-18 14:24 ` Johannes Schindelin
2017-09-18 18:19 ` Ben Peart
2017-09-19 15:28 ` Johannes Schindelin
2017-09-19 19:27 ` [PATCH v7 00/12] Fast git status via a file system watcher Ben Peart
2017-09-19 19:27 ` [PATCH v7 01/12] bswap: add 64 bit endianness helper get_be64 Ben Peart
2017-09-19 19:27 ` [PATCH v7 02/12] preload-index: add override to enable testing preload-index Ben Peart
2017-09-20 22:06 ` Stefan Beller
2017-09-21 0:02 ` Ben Peart
2017-09-21 0:44 ` Stefan Beller
2017-09-19 19:27 ` [PATCH v7 03/12] update-index: add a new --force-write-index option Ben Peart
2017-09-20 5:47 ` Junio C Hamano
2017-09-20 14:58 ` Ben Peart
2017-09-21 1:46 ` Junio C Hamano
2017-09-21 2:06 ` Ben Peart
2017-09-21 2:18 ` Junio C Hamano
2017-09-21 2:32 ` Junio C Hamano
2017-09-19 19:27 ` [PATCH v7 04/12] fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files Ben Peart
2017-09-20 2:28 ` Junio C Hamano
2017-09-20 16:19 ` Ben Peart
2017-09-21 2:00 ` Junio C Hamano
2017-09-21 2:24 ` Ben Peart
2017-09-21 14:35 ` Ben Peart
2017-09-22 1:02 ` Junio C Hamano
2017-09-20 6:23 ` Junio C Hamano
2017-09-20 16:29 ` Ben Peart
2017-09-19 19:27 ` [PATCH v7 05/12] fsmonitor: add documentation for the fsmonitor extension Ben Peart
2017-09-20 10:00 ` Martin Ågren
2017-09-20 17:02 ` Ben Peart
2017-09-20 17:11 ` Martin Ågren
2017-09-19 19:27 ` [PATCH v7 06/12] ls-files: Add support in ls-files to display the fsmonitor valid bit Ben Peart
2017-09-19 19:46 ` David Turner
2017-09-19 20:44 ` Ben Peart
2017-09-19 21:27 ` David Turner
2017-09-19 22:44 ` Ben Peart
2017-09-19 19:27 ` [PATCH v7 07/12] update-index: add fsmonitor support to update-index Ben Peart
2017-09-19 19:27 ` [PATCH v7 08/12] fsmonitor: add a test tool to dump the index extension Ben Peart
2017-09-19 19:27 ` [PATCH v7 09/12] split-index: disable the fsmonitor extension when running the split index test Ben Peart
2017-09-19 19:27 ` [PATCH v7 10/12] fsmonitor: add test cases for fsmonitor extension Ben Peart
2017-09-19 19:27 ` [PATCH v7 11/12] fsmonitor: add a sample integration script for Watchman Ben Peart
2017-09-19 19:27 ` [PATCH v7 12/12] fsmonitor: add a performance test Ben Peart
2017-09-22 16:35 ` [PATCH v8 00/12] Fast git status via a file system watcher Ben Peart
2017-09-22 16:35 ` [PATCH v8 01/12] bswap: add 64 bit endianness helper get_be64 Ben Peart
2017-09-22 23:37 ` Martin Ågren
2017-09-23 23:31 ` Ben Peart [this message]
2017-09-24 3:51 ` Jeff King
2017-09-24 3:52 ` Junio C Hamano
2017-09-22 16:35 ` [PATCH v8 02/12] preload-index: add override to enable testing preload-index Ben Peart
2017-09-22 16:35 ` [PATCH v8 03/12] update-index: add a new --force-write-index option Ben Peart
2017-09-22 16:35 ` [PATCH v8 04/12] fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files Ben Peart
2017-09-22 16:35 ` [PATCH v8 05/12] fsmonitor: add documentation for the fsmonitor extension Ben Peart
2017-09-22 16:35 ` [PATCH v8 06/12] ls-files: Add support in ls-files to display the fsmonitor valid bit Ben Peart
2017-09-22 16:35 ` [PATCH v8 07/12] update-index: add fsmonitor support to update-index Ben Peart
2017-09-22 16:35 ` [PATCH v8 08/12] fsmonitor: add a test tool to dump the index extension Ben Peart
2017-09-22 23:37 ` Martin Ågren
2017-09-23 23:33 ` Ben Peart
2017-09-24 3:51 ` Junio C Hamano
2017-09-22 16:35 ` [PATCH v8 09/12] split-index: disable the fsmonitor extension when running the split index test Ben Peart
2017-09-22 16:35 ` [PATCH v8 10/12] fsmonitor: add test cases for fsmonitor extension Ben Peart
2017-09-22 16:35 ` [PATCH v8 11/12] fsmonitor: add a sample integration script for Watchman Ben Peart
2017-09-22 16:35 ` [PATCH v8 12/12] fsmonitor: add a performance test Ben Peart
2017-09-29 2:20 ` [PATCH v8 00/12] Fast git status via a file system watcher Junio C Hamano
2017-09-29 12:07 ` Ben Peart
2017-10-01 8:24 ` Junio C Hamano
2017-10-03 19:48 ` Ben Peart
2017-10-04 2:09 ` Junio C Hamano
2017-10-04 6:38 ` Alex Vandiver
2017-10-04 12:48 ` Ben Peart
2017-10-04 12:27 ` Ben Peart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=MWHPR21MB047887A575D5DFFB213092A1F4640@MWHPR21MB0478.namprd21.prod.outlook.com \
--to=ben.peart@microsoft.com \
--cc=David.Turner@twosigma.com \
--cc=avarab@gmail.com \
--cc=christian.couder@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=johannes.schindelin@gmx.de \
--cc=martin.agren@gmail.com \
--cc=pclouds@gmail.com \
--cc=peff@peff.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).