4 ms·
Well, in the recent various assembly code paths I did program lately, much more of the, if not the whole, algorithm state would have be in registers.
by sylware 3y ago
Well, in the recent various assembly code paths I did program lately, much more of the, if not the whole, algorithm state would have be in registers.
- brucehoult 3y agoHave you tried spilling things to SSE registers instead of to the stack? I've never done something that might benefit from that on x86, but my understanding is that by the time you get to ... maybe Sandy Bridge? ... it's all one big register pool and the moves are just register renaming, not physical movement.
- sylware 3y agoIf I recall properly I was warned (kind of a long time ago) that moving data between the general registers and the vector registers is not that cheap, to a point it may be better to deal with the stack (~L1 cache memory). Any leads on that topic? Because I suspect the answers to be micro-architecture dependent and hidden deep in those abominations of llvm and gcc.
- brucehoult 3y agoI don't have. It's something I thought about trying for an update of rv8 (to assign almost all RISC-V registers to x86 registers), but have never got around to.