Time to move std.experimental.checkedint to std.checkedint ?

Walter Bright newshound2 at digitalmars.com
Wed Mar 31 06:34:04 UTC 2021


On 3/30/2021 10:30 PM, Vladimir Panteleev wrote:
> On Wednesday, 31 March 2021 at 05:25:48 UTC, Walter Bright wrote:
>> It's a win because it uses the address decoder logic which is separate from 
>> the arithmetic logic unit. This enables it to be done in parallel with the ALU.
> 
> Is this still true for modern CPUs?

See https://www.agner.org/optimize/optimizing_assembly.pdf page 135.


>> Although not relevant for this particular example, it also doesn't need 
>> another register for the intermediate value.
> Haven't CPUs used register renaming for a long time now? It's also pretty rare 
> to see x86_64 code that uses all registers.

If you use a register that needs to be saved on the stack, it's going to cost.


More information about the Digitalmars-d mailing list