Path: ...!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: Stephen Fuld Newsgroups: comp.arch Subject: Re: Why VAX Was the Ultimate CISC and Not RISC Date: Tue, 11 Mar 2025 13:46:24 -0700 Organization: A noiseless patient Spider Lines: 57 Message-ID: References: <2025Mar2.234011@mips.complang.tuwien.ac.at> <5pkg9l-kipt.ln1@msc27.me.uk> <2025Mar3.174417@mips.complang.tuwien.ac.at> <2025Mar4.110420@mips.complang.tuwien.ac.at> <2025Mar5.083636@mips.complang.tuwien.ac.at> <9371fe9be75cdd606c876f539e1d2d78@www.novabbs.org> <0da86de26bac1912b190793512255aa4@www.novabbs.org> <5e696219dedf30d0095dfd7671a4c87f@www.novabbs.org> <1ad795d74196830d2232d4f0b50ac2e4@www.novabbs.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Tue, 11 Mar 2025 21:46:32 +0100 (CET) Injection-Info: dont-email.me; posting-host="617d9ae2268289fad26cfbdea81af88e"; logging-data="2177962"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/UsZXQZK1wmEylxO5pdESBvyN2lSoz2qo=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:ZyBd7D6NYjmVgZR/HlBPPpt3aTs= In-Reply-To: <1ad795d74196830d2232d4f0b50ac2e4@www.novabbs.org> Content-Language: en-US Bytes: 4386 On 3/11/2025 11:56 AM, MitchAlsup1 wrote: > On Tue, 11 Mar 2025 18:15:06 +0000, Stephen Fuld wrote: > >> On 3/11/2025 10:44 AM, MitchAlsup1 wrote: >>>>> When you do change names, can you spell LD and ST instead of MOV ?? >>>> >>>> Yes, please LD / ST it is so much clearer what is going on. Less >>>> trouble >>>> getting confused by the placement of operands. >>>> >>>> I always put the memory operand second, which breaks the pattern of >>>> having the destination operand first. Otherwise the destination is >>>> first. >>>> >>>> I go cross-eyed reading code that is a whole lot of moves. >>> >>> I agree. >> >> I wonder if the different preferences is at least partially due to >> whether the person has a hardware or a software background? > > Even when both LD and ST are written MOV there is a different OpCode > for the inbound MOV versus the outbound MOV, so, in effect, they are > really different instructions requiring different pipeline semantics. > > Only (O N L Y) when one has a memory to memory move instruction can > the LDs and STs be MOVs. VAX had this, BJX* does not. > > One should argue that different pipeline semantics requires a different > OpCode--and you already have said OpCode having different bit patterns > and different signedness semantics different translation access rights > , ... At the HW level about the only thing LD has in common with ST is > the way the address is generated--although MIPS did something different. You are making my point. No software guy talks about "pipeline semantics" :-) Note that I am not saying you are wrong, just noting the difference. > >>                                                         The idea is >> that when hardware guys see the instruction, they think in terms of >> register ports (read versus write), what is required of the memory >> system (somewhat different for loads versus stores), etc.  However >> software guys think of a language construct, e.g. X = Y, which is > > MARY and MARY2 used X = Y to mean the value in X is deposited into Y. > Both were left to right only languages. This should surprise most !! > {{Although to be fair, Mary used the =: operator to perform assign.}} And see my point about COBOL in the post above. -- - Stephen Fuld (e-mail address disguised to prevent spam)