Linux mail.vriendennsm.nl 6.1.0-51-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.177-1 (2026-07-16) x86_64
Apache/2.4.68 (Debian)
Server IP : 217.154.75.17 & Your IP : 216.73.217.15
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
share /
guile /
3.0 /
language /
tree-il /
Delete
Unzip
Name
Size
Permission
Date
Action
analyze.scm
52.59
KB
-rw-r--r--
2022-02-10 20:40
compile-bytecode.scm
54.18
KB
-rw-r--r--
2022-02-10 20:40
compile-cps.scm
99.63
KB
-rw-r--r--
2022-02-10 20:40
cps-primitives.scm
7.37
KB
-rw-r--r--
2022-02-10 20:40
debug.scm
9.78
KB
-rw-r--r--
2022-02-10 20:40
effects.scm
22.69
KB
-rw-r--r--
2022-02-10 20:40
eta-expand.scm
6.71
KB
-rw-r--r--
2022-02-10 20:40
fix-letrec.scm
11.9
KB
-rw-r--r--
2022-02-10 20:40
inlinable-exports.scm
31.18
KB
-rw-r--r--
2022-02-10 20:40
letrectify.scm
11.15
KB
-rw-r--r--
2022-02-10 20:40
optimize.scm
3.25
KB
-rw-r--r--
2022-02-10 20:40
peval.scm
71.44
KB
-rw-r--r--
2022-02-10 20:40
primitives.scm
23.03
KB
-rw-r--r--
2022-02-10 20:40
resolve-free-vars.scm
9.7
KB
-rw-r--r--
2022-02-10 20:40
spec.scm
2.05
KB
-rw-r--r--
2022-02-10 20:40
Save
Rename
;;; Tree-il optimizer ;; Copyright (C) 2009, 2010-2015, 2018-2021 Free Software Foundation, Inc. ;;;; This library is free software; you can redistribute it and/or ;;;; modify it under the terms of the GNU Lesser General Public ;;;; License as published by the Free Software Foundation; either ;;;; version 3 of the License, or (at your option) any later version. ;;;; ;;;; This library is distributed in the hope that it will be useful, ;;;; but WITHOUT ANY WARRANTY; without even the implied warranty of ;;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;;;; Lesser General Public License for more details. ;;;; ;;;; You should have received a copy of the GNU Lesser General Public ;;;; License along with this library; if not, write to the Free Software ;;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ;;; Code: (define-module (language tree-il optimize) #:use-module (ice-9 match) ;; FIXME: Perhaps allow bootstrap builds to skip fix-letrec, because ;; it imports intset, intmap, etc. #:use-module (language tree-il fix-letrec) #:use-module (system base optimize) #:export (optimize make-lowerer tree-il-optimizations)) (define (make-optimizer opts) (define-syntax lookup (syntax-rules () ((lookup kw id) (lookup kw id id)) ((lookup kw submodule proc) (and (assq-ref opts kw) (module-ref (resolve-interface '(language tree-il submodule)) 'proc))))) (let ((verify (or (lookup #:verify-tree-il? debug verify-tree-il) (lambda (exp) exp))) (modulify (lookup #:resolve-free-vars? resolve-free-vars)) (resolve (lookup #:resolve-primitives? primitives resolve-primitives)) (expand (lookup #:expand-primitives? primitives expand-primitives)) (letrectify (lookup #:letrectify? letrectify)) (seal? (assq-ref opts #:seal-private-bindings?)) (xinline? (assq-ref opts #:cross-module-inlining?)) (peval (lookup #:partial-eval? peval)) (eta-expand (lookup #:eta-expand? eta-expand)) (inlinables (lookup #:inlinable-exports? inlinable-exports))) (define-syntax-rule (run-pass! (proc exp arg ...)) (when proc (set! exp (verify (proc exp arg ...))))) (lambda (exp env) (verify exp) (run-pass! (modulify exp)) (run-pass! (resolve exp env)) (run-pass! (expand exp)) (run-pass! (letrectify exp #:seal-private-bindings? seal?)) (run-pass! (fix-letrec exp)) (run-pass! (peval exp env #:cross-module-inlining? xinline?)) (run-pass! (eta-expand exp)) (run-pass! (inlinables exp)) exp))) (define (optimize x env opts) ((make-optimizer opts) x env)) (define (tree-il-optimizations) (available-optimizations 'tree-il)) (define (make-lowerer optimization-level opts) (define (kw-arg-ref args kw default) (match (memq kw args) ((_ val . _) val) (_ default))) (define (enabled-for-level? level) (<= level optimization-level)) (make-optimizer (let lp ((all-opts (tree-il-optimizations))) (match all-opts (() '()) (((kw level) . all-opts) (acons kw (kw-arg-ref opts kw (enabled-for-level? level)) (lp all-opts)))))))