TIP: Click on subject to list as thread! ANSI
echo: rberrypi
to: TAUNO VOIPIO
from: DRUCK
date: 2020-09-04 17:19:00
subject: Re: Spectre / Meltdown

On 04/09/2020 13:36, Tauno Voipio wrote:
> On 4.9.20 12.10, druck wrote:
> In the 32 bit ARM (ARM7TDMI and relatives), the conditionality is in the
> top 4 bits of most instructions.

Most of the NV (never) variants have been repurposed as new instructions
now, as they were never that useful.

> In the same chips, the pipelining peeks in two places:
>   - offsets of PC-relative addresses,
>   - return addresses of exceptions.


Well remembered. It was a side effect of the very simple logic in ARM2 
which had a 3 stage pipeline so value of the PC register was always +8* 
of the currently executing instruction (ignoring Thumb which is +4).

Its a shame there wasn't the budget for a few extra transistors to 'fix'
this at the time, because this behaviour has had to be preserved on 
every subsequent ARM, no matter how many stages it has.

* There is one place where it is +12, can't remember where though!

---druck

--- SoupGate-Win32 v1.05
* Origin: Agency HUB, Dunedin - New Zealand | FidoUsenet Gateway (3:770/3)

SOURCE: echomail via QWK@docsplace.org

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.