Added inline hint around `index?' definition; my own timing suggests 2x speedup
original commit: 419b59e88ea025a4d6cd2fa2cdbe62eb64529c78
This commit is contained in:
parent
93a0e963c7
commit
9725465b46
|
@ -1,14 +1,19 @@
|
|||
#lang racket/base
|
||||
|
||||
(require racket/unsafe/ops)
|
||||
(require racket/unsafe/ops
|
||||
racket/performance-hint)
|
||||
|
||||
(provide index? exact-rational?)
|
||||
|
||||
;; this is required for template in numeric-tower.rkt
|
||||
|
||||
(begin-encourage-inline
|
||||
|
||||
;; we assume indexes are 2 bits shorter than fixnums
|
||||
;; We're generating a reference to fixnum? rather than calling it, so
|
||||
;; we're safe from fixnum size issues on different platforms.
|
||||
(define (index? x) (and (fixnum? x) (unsafe-fx>= x 0) (fixnum? (* x 4))))
|
||||
|
||||
(define (exact-rational? x) (and (rational? x) (exact? x)))
|
||||
|
||||
) ; begin-encourage-inline
|
||||
|
|
Loading…
Reference in New Issue
Block a user