Changeset 11853 for trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
- Timestamp:
- 05/10/09 21:21:44 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abcl/src/org/armedbear/lisp/compiler-pass2.lisp
r11852 r11853 3021 3021 (local-function (find-local-function op)) 3022 3022 (*register* *register*) 3023 (saved-vars '())) 3023 (saved-vars '()) 3024 (label-START (gensym)) 3025 (label-END (gensym)) 3026 (label-EXIT (gensym))) 3024 3027 (cond ((local-function-variable local-function) 3025 3028 ;; LABELS … … 3032 3035 *visible-variables*)))) 3033 3036 ;; (emit 'var-ref (local-function-variable local-function) 'stack) 3037 (when saved-vars 3038 (label label-START)) 3034 3039 (compile-var-ref (make-var-ref (local-function-variable local-function)) 'stack nil)) 3035 3040 (t … … 3050 3055 (emit-move-from-stack target representation) 3051 3056 (when saved-vars 3052 (restore-variables saved-vars))) 3057 (emit 'goto label-EXIT) 3058 (label label-END) 3059 (restore-variables saved-vars) 3060 (emit 'athrow) 3061 (label label-EXIT) 3062 (restore-variables saved-vars) 3063 (push (make-handler :from label-START 3064 :to label-END 3065 :code label-END 3066 :catch-type 0) *handlers*))) 3053 3067 t) 3054 3068
Note: See TracChangeset
for help on using the changeset viewer.