Path: ...!weretis.net!feeder9.news.weretis.net!news.nk.ca!rocksolid2!i2pn2.org!.POSTED!not-for-mail From: mitchalsup@aol.com (MitchAlsup1) Newsgroups: comp.arch Subject: Re: Misc: BGBCC targeting RV64G, initial results... Date: Fri, 27 Sep 2024 23:21:01 +0000 Organization: Rocksolid Light Message-ID: <32530d5762161fe427306ede7d2c26c0@www.novabbs.org> References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: i2pn2.org; logging-data="3784423"; mail-complaints-to="usenet@i2pn2.org"; posting-account="65wTazMNTleAJDh/pRqmKE7ADni/0wesT78+pyiDW8A"; User-Agent: Rocksolid Light X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8 X-Spam-Checker-Version: SpamAssassin 4.0.0 X-Rslight-Site: $2y$10$HqDvDJSUjgFunrJ8ygB0wuvoaXdPp20O75ODBDDnxGcoLMuxOXGxi Bytes: 1801 Lines: 25 On Fri, 27 Sep 2024 21:28:41 +0000, BGB wrote: > On 9/27/2024 10:52 AM, MitchAlsup1 wrote: >> My 66000 can do::  1 < i && i <= MAX in 1 instruction >> > > BJX2: > CMPQGT R4, 1, R16 > CMPQLT R4, (MAX+1), R17 //*1 > AND R16, R17, R5 > > So, more than 1 instruction, but less than faking it with SLT / SLTI ... > CMP Rt,Ri,MAX BFIN Rt,label // fin = Fortran IN ----- > > It is better for performance though to be able to flip the output bit in > the pipeline than to need to use an XOR instruction or similar. I do integer negation by flipping all the bits and running a carry into the subsequent ALU. Thus, if the target calculation unit is logical, one gets inversion integer gets negation, and FPUs only invert the sign bit.