Re: [PATCH] AArch64: Cleanup alignment macros

2025-01-10 Thread Wilco Dijkstra
Hi Richard, > It looks like you committed the original version instead, with no extra > explanation.  I suppose I should have asked for another review round > instead. Did you check the commit log? Change the AARCH64_EXPAND_ALIGNMENT macro into proper function calls to make future change

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-30 Thread Richard Sandiford
Richard Sandiford writes: > Wilco Dijkstra writes: >> Hi Richard, >> A common case is a constant string which is compared against some argument. Most string functions work on 8 or 16-byte quantities. If we ensure the whole array fits in one aligned load, we save time in the st

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-10 Thread Richard Sandiford
Wilco Dijkstra writes: > Hi Richard, > >>> A common case is a constant string which is compared against some >>> argument. Most string functions work on 8 or 16-byte quantities. If we >>> ensure the whole array fits in one aligned load, we save time in the >>> string function. >>> >>> Runtime data

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-06 Thread Wilco Dijkstra
Hi Richard, >> A common case is a constant string which is compared against some >> argument. Most string functions work on 8 or 16-byte quantities. If we >> ensure the whole array fits in one aligned load, we save time in the >> string function. >> >> Runtime data collected for strlen calls shows

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-06 Thread Richard Sandiford
Wilco Dijkstra writes: > Hi Richard, > >> So just to be sure I understand: we still want to align (say) an array >> of 4 chars to 32 bits so that the LDR & STR are aligned, and an array of >> 3 chars to 32 bits so that the LDRH & STRH for the leading two bytes are >> aligned? Is that right? We d

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-06 Thread Wilco Dijkstra
Hi Richard, > So just to be sure I understand: we still want to align (say) an array > of 4 chars to 32 bits so that the LDR & STR are aligned, and an array of > 3 chars to 32 bits so that the LDRH & STRH for the leading two bytes are > aligned?  Is that right?  We don't seem to take advantage of

Re: [PATCH] AArch64: Cleanup alignment macros

2024-12-06 Thread Richard Sandiford
Wilco Dijkstra writes: > Change the AARCH64_EXPAND_ALIGNMENT macro into proper function calls to make > future changes easier. Use the existing alignment settings, however avoid > overaligning small array's or structs to 64 bits when there is no benefit. > This gives a small reduction in data and