亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? arith.lisp

?? 開源跨平臺Lisp編譯器
?? LISP
?? 第 1 頁 / 共 2 頁
字號:
;;;; stuff to handle simple cases for generic arithmetic;;;; This software is part of the SBCL system. See the README file for;;;; more information.;;;;;;;; This software is derived from the CMU CL system, which was;;;; written at Carnegie Mellon University and released into the;;;; public domain. The software is in the public domain and is;;;; provided with absolutely no warranty. See the COPYING and CREDITS;;;; files for more information.(in-package "SB!VM");;;; Addition and subtraction.;;; static-fun-offset returns the address of the raw_addr slot of;;; a static function's fdefn.;;; Note that there is only one use of static-fun-offset outside this;;; file (in genesis.lisp)(define-assembly-routine (generic-+                          (:cost 10)                          (:return-style :full-call)                          (:translate +)                          (:policy :safe)                          (:save-p t))                         ((:arg x (descriptor-reg any-reg) a0-offset)                          (:arg y (descriptor-reg any-reg) a1-offset)                          (:res res (descriptor-reg any-reg) a0-offset)                          (:temp temp non-descriptor-reg nl0-offset)                          (:temp temp1 non-descriptor-reg nl1-offset)                          (:temp temp2 non-descriptor-reg nl2-offset)                          (:temp pa-flag non-descriptor-reg nl4-offset)                          (:temp lra descriptor-reg lra-offset)                          (:temp lip interior-reg lip-offset)                          (:temp nargs any-reg nargs-offset)                          (:temp ocfp any-reg ocfp-offset))  (inst or temp x y)  (inst and temp fixnum-tag-mask)  (inst bne temp DO-STATIC-FUN)  (inst addu temp x y)  ;; check for overflow  (inst xor temp1 temp x)  (inst xor temp2 temp y)  (inst and temp1 temp2)  (inst bltz temp1 DO-OVERFLOW)  (inst sra temp1 x n-fixnum-tag-bits)  (inst move res temp)  (lisp-return lra lip :offset 2)  DO-OVERFLOW  ;; We did overflow, so do the bignum version  (inst sra temp2 y n-fixnum-tag-bits)  (inst addu temp temp1 temp2)  (with-fixed-allocation (res pa-flag temp2 bignum-widetag                          (1+ bignum-digits-offset) nil)    (storew temp res bignum-digits-offset other-pointer-lowtag))  (lisp-return lra lip :offset 2)  DO-STATIC-FUN  (inst lw lip null-tn (static-fun-offset 'two-arg-+))  (inst li nargs (fixnumize 2))  (move ocfp cfp-tn)  (inst j lip)  (move cfp-tn csp-tn t))(define-assembly-routine (generic--                          (:cost 10)                          (:return-style :full-call)                          (:translate -)                          (:policy :safe)                          (:save-p t))                         ((:arg x (descriptor-reg any-reg) a0-offset)                          (:arg y (descriptor-reg any-reg) a1-offset)                          (:res res (descriptor-reg any-reg) a0-offset)                          (:temp temp non-descriptor-reg nl0-offset)                          (:temp temp1 non-descriptor-reg nl1-offset)                          (:temp temp2 non-descriptor-reg nl2-offset)                          (:temp pa-flag non-descriptor-reg nl4-offset)                          (:temp lra descriptor-reg lra-offset)                          (:temp lip interior-reg lip-offset)                          (:temp nargs any-reg nargs-offset)                          (:temp ocfp any-reg ocfp-offset))  (inst or temp x y)  (inst and temp fixnum-tag-mask)  (inst bne temp DO-STATIC-FUN)  (inst subu temp x y)  ;; check for overflow  (inst xor temp1 x y)  (inst xor temp2 x temp)  (inst and temp1 temp2)  (inst bltz temp1 DO-OVERFLOW)  (inst sra temp1 x n-fixnum-tag-bits)  (inst move res temp)  (lisp-return lra lip :offset 2)  DO-OVERFLOW  ;; We did overflow, so do the bignum version  (inst sra temp2 y n-fixnum-tag-bits)  (inst subu temp temp1 temp2)  (with-fixed-allocation (res pa-flag temp2 bignum-widetag                          (1+ bignum-digits-offset) nil)    (storew temp res bignum-digits-offset other-pointer-lowtag))  (lisp-return lra lip :offset 2)  DO-STATIC-FUN  (inst lw lip null-tn (static-fun-offset 'two-arg--))  (inst li nargs (fixnumize 2))  (move ocfp cfp-tn)  (inst j lip)  (move cfp-tn csp-tn t));;;; Multiplication(define-assembly-routine (generic-*                          (:cost 25)                          (:return-style :full-call)                          (:translate *)                          (:policy :safe)                          (:save-p t))                         ((:arg x (descriptor-reg any-reg) a0-offset)                          (:arg y (descriptor-reg any-reg) a1-offset)                          (:res res (descriptor-reg any-reg) a0-offset)                          (:temp temp non-descriptor-reg nl0-offset)                          (:temp lo non-descriptor-reg nl1-offset)                          (:temp hi non-descriptor-reg nl2-offset)                          (:temp pa-flag non-descriptor-reg nl4-offset)                          (:temp lra descriptor-reg lra-offset)                          (:temp lip interior-reg lip-offset)                          (:temp nargs any-reg nargs-offset)                          (:temp ocfp any-reg ocfp-offset))  ;; If either arg is not a fixnum, call the static function.  (inst or temp x y)  (inst and temp fixnum-tag-mask)  (inst bne temp DO-STATIC-FUN)  ;; Remove the tag from one arg so that the result will have the correct  ;; fixnum tag.  (inst sra temp x n-fixnum-tag-bits)  (inst mult temp y)  (inst mflo res)  (inst mfhi hi)  ;; Check to see if the result will fit in a fixnum.  (I.e. the high word  ;; is just 32 copies of the sign bit of the low word).  (inst sra temp res 31)  (inst bne temp hi DO-BIGNUM)  (inst srl lo res n-fixnum-tag-bits)  (lisp-return lra lip :offset 2)  DO-BIGNUM  ;; Shift the double word hi:res down two bits into hi:low to get rid of the  ;; fixnum tag.  (inst sll temp hi (- n-word-bits n-fixnum-tag-bits))  (inst or lo temp)  (inst sra hi n-fixnum-tag-bits)  ;; Do we need one word or two?  Assume two.  (inst sra temp lo 31)  (inst bne temp hi TWO-WORDS)  ;; Assume a two word header.  (inst li temp (logior (ash 2 n-widetag-bits) bignum-widetag))  ;; Only need one word, fix the header.  (inst li temp (logior (ash 1 n-widetag-bits) bignum-widetag))  (pseudo-atomic (pa-flag :extra (pad-data-block (+ 1 bignum-digits-offset)))    (inst or res alloc-tn other-pointer-lowtag)    (storew temp res 0 other-pointer-lowtag))  (storew lo res bignum-digits-offset other-pointer-lowtag)  (lisp-return lra lip :offset 2)  TWO-WORDS  (pseudo-atomic (pa-flag :extra (pad-data-block (+ 2 bignum-digits-offset)))    (inst or res alloc-tn other-pointer-lowtag)    (storew temp res 0 other-pointer-lowtag))  (storew lo res bignum-digits-offset other-pointer-lowtag)  (storew hi res (1+ bignum-digits-offset) other-pointer-lowtag)  (lisp-return lra lip :offset 2)  DO-STATIC-FUN  (inst lw lip null-tn (static-fun-offset 'two-arg-*))  (inst li nargs (fixnumize 2))  (move ocfp cfp-tn)  (inst j lip)  (move cfp-tn csp-tn t))(macrolet    ((frob (name note cost type sc signed-p)       `(define-assembly-routine (,name                                  (:note ,note)                                  (:cost ,cost)                                  (:translate *)                                  (:policy :fast-safe)                                  (:arg-types ,type ,type)                                  (:result-types ,type))                                 ((:arg x ,sc nl0-offset)                                  (:arg y ,sc nl1-offset)                                  (:res res ,sc nl0-offset))          ,@(when (eq type 'tagged-num)              `((inst sra x 2)))          (inst ,(if signed-p 'mult 'multu) x y)          (inst mflo res))))  (frob unsigned-* "unsigned *" 40 unsigned-num unsigned-reg nil)  (frob signed-* "signed *" 41 signed-num signed-reg t)  (frob fixnum-* "fixnum *" 30 tagged-num any-reg t));;;; Division.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线观看视频在线| 精品国产一区久久| 欧美高清视频www夜色资源网| 精品久久久久久最新网址| 亚洲免费av高清| 国产91在线观看| 日韩你懂的在线播放| 亚洲免费高清视频在线| 国产电影精品久久禁18| 欧美一区二区大片| 亚洲第一福利一区| 在线一区二区观看| 国产精品久久精品日日| 国产一区二区h| 日韩欧美三级在线| 视频一区欧美日韩| 在线观看成人免费视频| 国产精品国产三级国产专播品爱网| 麻豆一区二区三| 7777精品伊人久久久大香线蕉完整版| 亚洲丝袜美腿综合| 99riav一区二区三区| 国产精品入口麻豆九色| 国产一区二区在线电影| 精品国产精品一区二区夜夜嗨| 亚洲第四色夜色| 欧美高清视频在线高清观看mv色露露十八 | 99国产精品国产精品久久| 国产亚洲精品bt天堂精选| 黄色成人免费在线| 久久午夜国产精品| 国产成人精品免费网站| 日本一区二区三区视频视频| 国产精品18久久久久久vr| 精品乱码亚洲一区二区不卡| 久久成人精品无人区| 欧美电视剧在线观看完整版| 精品一区二区影视| 精品福利av导航| 国产一区在线观看麻豆| 久久久久久久久久久久久久久99| 国产一区二区不卡在线| 中文字幕精品一区二区三区精品| 成人爱爱电影网址| 亚洲女同ⅹxx女同tv| 欧美日韩亚洲国产综合| 免费不卡在线视频| 久久久久国产精品麻豆ai换脸| 国产精品一区二区黑丝| 国产精品福利一区二区三区| 亚洲女人小视频在线观看| 国产精品国产自产拍在线| 久久久久久久久久电影| 亚洲1区2区3区4区| 欧美日韩国产高清一区二区三区| 亚洲国产日韩一区二区| 日韩一二三区不卡| 国产高清在线精品| 亚洲在线视频网站| 欧美一区二区免费| 成人晚上爱看视频| 日韩亚洲欧美中文三级| 成人免费看片app下载| 日本精品裸体写真集在线观看 | 国产一区二区三区免费在线观看| 久久久久久影视| 91麻豆高清视频| 婷婷夜色潮精品综合在线| 久久久久久久久久美女| 91精品办公室少妇高潮对白| 秋霞午夜av一区二区三区| 精品久久人人做人人爱| 在线精品国精品国产尤物884a| 日本在线播放一区二区三区| 欧美国产日韩一二三区| 欧美日韩国产免费一区二区| 国产成人精品影视| 亚洲一区二区三区四区五区黄 | 久久久久久久电影| 欧美综合久久久| 国产69精品久久777的优势| 亚洲成人午夜电影| 日韩久久久精品| 一本色道综合亚洲| 国产一区在线观看视频| 日韩av在线发布| 成人免费视频在线观看| 久久婷婷国产综合国色天香| 欧美性猛片xxxx免费看久爱| 成人免费视频视频在线观看免费 | 成人午夜激情影院| 七七婷婷婷婷精品国产| 怡红院av一区二区三区| 欧美国产1区2区| 亚洲精品在线三区| 91精品麻豆日日躁夜夜躁| 在线视频综合导航| 99视频精品全部免费在线| 国产一区视频网站| 精品一区二区三区欧美| 视频一区在线视频| 婷婷一区二区三区| 亚洲成人在线网站| 亚洲国产aⅴ成人精品无吗| 国产精品久久久久久久久久免费看 | 久久99精品久久久| 国产精品你懂的在线欣赏| 欧美电影免费提供在线观看| 91免费小视频| 大胆亚洲人体视频| 精品午夜久久福利影院| 国产麻豆视频一区| 中文字幕一区二区三区不卡| 日本韩国一区二区三区视频| 亚洲人成网站精品片在线观看| 欧美日本视频在线| 国产精品综合二区| 波多野结衣在线aⅴ中文字幕不卡| 91精品国产综合久久福利| 97精品国产97久久久久久久久久久久| 美女网站色91| 九九国产精品视频| 国产一区二区不卡在线| 黄一区二区三区| 国产成人免费在线| 北岛玲一区二区三区四区| 99麻豆久久久国产精品免费优播| av资源网一区| 色婷婷狠狠综合| 欧美日韩一区不卡| 欧美男男青年gay1069videost| 制服.丝袜.亚洲.中文.综合| 欧美大片免费久久精品三p| 精品成人免费观看| 欧美激情在线一区二区三区| 丁香激情综合五月| 免费在线一区观看| 日韩精品一二三区| 日本亚洲天堂网| 久久电影国产免费久久电影| 午夜视频在线观看一区| 亚洲一区二区三区精品在线| 亚洲va中文字幕| 天天影视网天天综合色在线播放| 偷拍日韩校园综合在线| 午夜精品久久久久久久久久| 色婷婷国产精品| 国产呦萝稀缺另类资源| 国产精品热久久久久夜色精品三区| 日韩欧美资源站| 国产精品久久久一区麻豆最新章节| 亚洲女子a中天字幕| 日韩不卡免费视频| www.日本不卡| 在线播放91灌醉迷j高跟美女| 久久精品夜色噜噜亚洲aⅴ| 亚洲免费在线播放| 麻豆中文一区二区| 色婷婷精品大视频在线蜜桃视频| 精品国内片67194| 一区二区三区精品视频| 国产精品88888| 欧美精品成人一区二区三区四区| 国产日韩欧美亚洲| 性感美女久久精品| 成人av中文字幕| 欧美va在线播放| 亚洲影视资源网| 成人激情文学综合网| 日韩欧美中文一区二区| 亚洲综合色噜噜狠狠| 国产成人av自拍| 欧美成人a在线| 亚洲国产va精品久久久不卡综合| 成人教育av在线| 久久久久国产精品麻豆| 美女在线观看视频一区二区| 91精品福利在线| 亚洲欧洲性图库| 国产成人av电影在线观看| 欧美一区二区三区爱爱| 亚洲国产精品尤物yw在线观看| kk眼镜猥琐国模调教系列一区二区| 日韩免费电影一区| 日本欧美一区二区三区| 欧美日韩精品一区二区在线播放| 中文字幕一区二区三中文字幕| 国产精品一区在线| 精品国产sm最大网站| 日产欧产美韩系列久久99| 欧美日韩第一区日日骚| 亚洲资源在线观看| 色婷婷国产精品综合在线观看| 亚洲欧美日韩系列| 91丝袜美女网| 一个色综合av| 在线看国产一区二区| 亚洲午夜电影在线| 欧美丝袜丝交足nylons图片| 一区二区三区国产|