From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.devel Subject: Re: [PATCH] Re: Bignum performance Date: Wed, 16 Aug 2023 03:37:22 +0200 Message-ID: <87v8dfepil.fsf@dataswamp.org> References: <87bkfartof.fsf@localhost> <175cf474-29c8-a482-072e-0de784ac59e8@gmail.com> <87o7jaqc31.fsf@localhost> <2d419e12-9239-de3e-47d0-38815a00025f@gmail.com> <87msyth8jh.fsf@dataswamp.org> <871qg4n7n4.fsf@yahoo.com> <87wmxwfk9r.fsf@dataswamp.org> <87leeblqly.fsf@yahoo.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34690"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) To: emacs-devel@gnu.org Cancel-Lock: sha1:IG6kSsM3Aoe/uPnIvDEwcPb4OpQ= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Aug 16 04:22:06 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qW6Af-0008oQ-Ut for ged-emacs-devel@m.gmane-mx.org; Wed, 16 Aug 2023 04:22:05 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qW69X-0007I1-4d; Tue, 15 Aug 2023 22:20:55 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qW5Ta-0002zs-RR for emacs-devel@gnu.org; Tue, 15 Aug 2023 21:37:34 -0400 Original-Received: from ciao.gmane.io ([116.202.254.214]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qW5TY-0008Sj-EN for emacs-devel@gnu.org; Tue, 15 Aug 2023 21:37:34 -0400 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1qW5TV-0005gh-4Y for emacs-devel@gnu.org; Wed, 16 Aug 2023 03:37:29 +0200 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: emacs-devel@gnu.org Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=ged-emacs-devel@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -15 X-Spam_score: -1.6 X-Spam_bar: - X-Spam_report: (-1.6 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.25, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 15 Aug 2023 22:20:53 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:308786 Archived-At: Po Lu wrote: >>> Under Arm64, general purpose integer registers are 64 bits >>> wide. That is also the word size of said machine. >> >> If they are, the range for fixnums is >> >> (list (* -1 (expt 2 (1- 64))) >> (1- (expt 2 (1- 64))) ) >> >> (-9223372036854775808 9223372036854775807) >> >> Only after that it gets slower :P > > Lisp systems normally set aside several of the high or low > bits of a register as a tag linking a type to the > object represented. But here we are at the CPU architecture level (register length), surely Lisp don't meddle with that? No, I sense that it is, actually. So please explain, then, how it works. And in particular, how many bits do we (Elisp and CL) actually have for our fixnums? Or, ar we talking bignums now? -- underground experts united https://dataswamp.org/~incal