←back to thread

226 points mshockwave | 1 comments | | HN request time: 0.001s | source
Show context
sloemoe ◴[] No.44502573[source]
Put that in your delay slot and smoke it.

https://en.wikipedia.org/wiki/Delay_slot

I'm surprised by how many other architectures use it.

replies(4): >>44502951 #>>44503609 #>>44503931 #>>44504952 #
vesinisa ◴[] No.44503931[source]
Whoa, had no idea this existed. Wild stuff. Might be "somewhat" confusing to read assembler code like that without knowing about this particular technique..
replies(2): >>44504037 #>>44508846 #
chasil ◴[] No.44504037{3}[source]
Allow me to introduce you to register windows.

https://www.jwhitham.org/2016/02/risc-instruction-sets-i-hav...

replies(2): >>44504985 #>>44505013 #
apaprocki ◴[] No.44504985{4}[source]
Both register windows and the delay slot exist on SPARC processors, which you’re much more likely to run into in a data center (running open-source software).

Itanium was the really odd one — it not only used register windows but could offload some of the prior windows onto the heap. Most people would probably never notice… unless you’re trying to get a conservative scanning GC working and are stumped why values in some registers seem to not be traced…

replies(1): >>44505025 #
burnt-resistor ◴[] No.44505025{5}[source]
Pour one out for Itanium. It tried to make the panacea of VLIW and branch hints work, but it didn't pan out.
replies(2): >>44505810 #>>44507100 #
chithanh ◴[] No.44507100{6}[source]
VLIW is maybe cool, but people will be relieving themselves on EPIC's grave for the pain that it inflicted on them.

Like if you tried to debug a software crash on Itanium. The customer provided core dump was useless as you could not see what was going on. Intel added a debug mode to their compilers which disabled all that EPIC so hopefully you could reproduce the crash there, or on other CPU architectures. Otherwise you were basically screwed.

replies(1): >>44507607 #
1. burnt-resistor ◴[] No.44507607{7}[source]
EPIC :nauseous face emoji:

That HP-Intel arrangement was weird. One time, an Intel-badged employee came out to change a tape drive on a (Compaq->HP->HPE) Compaq SSL2020 tape robot. Okay, I guess they shared employees. ¯\_(ツ)_/¯