Skip to content

Commit 7e7d743

Browse files
committed
remove an unused var-info flag and some unused definitions in inference
1 parent 3344622 commit 7e7d743

3 files changed

Lines changed: 4 additions & 20 deletions

File tree

base/inference.jl

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -105,16 +105,10 @@ function _iisconst(s::Symbol, sv)
105105
m = sv.mod
106106
isdefined(m,s) && (ccall(:jl_is_const, Int32, (Any, Any), m, s) != 0)
107107
end
108-
_iisconst(s::SymbolNode, sv) = _iisconst(s.name, sv)
109-
_iisconst(s::TopNode, sv) = isconst(_topmod(sv.mod), s.name)
110-
_iisconst(s::GlobalRef, sv) = isconst(s.mod, s.name)
111-
_iisconst(x::Expr, sv) = false
112-
_iisconst(x::ANY, sv) = true
113108

114109
_ieval(x::ANY, sv) =
115110
ccall(:jl_interpret_toplevel_expr_in, Any, (Any, Any, Any, Any),
116111
sv.mod, x, svec(), svec())
117-
_iisdefined(x::ANY, sv) = isdefined(sv.mod, x)
118112

119113
_topmod(sv::VarInfo) = _topmod(sv.mod)
120114
_topmod(m::Module) = ccall(:jl_base_relative_to, Any, (Any,), m)::Module
@@ -1986,17 +1980,13 @@ function type_annotate(ast::Expr, states::Array{Any,1}, sv::ANY, rettype::ANY, a
19861980

19871981
# add declarations for variables that are always the same type
19881982
for vi in ast.args[2][1]::Array{Any,1}
1989-
if (vi[3]&4)==0
1990-
vi[2] = get(decls, vi[1], vi[2])
1991-
end
1983+
vi[2] = get(decls, vi[1], vi[2])
19921984
if haskey(undefs, vi[1])
19931985
vi[3] |= 32
19941986
end
19951987
end
19961988
for vi in ast.args[2][2]::Array{Any,1}
1997-
if (vi[3]&4)==0
1998-
vi[2] = get(decls, vi[1], vi[2])
1999-
end
1989+
vi[2] = get(decls, vi[1], vi[2])
20001990
if haskey(undefs, vi[1])
20011991
vi[3] |= 32
20021992
end

src/ast.scm

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,6 @@
215215
(define (vinfo:set-capt! v c) (set-car! (cddr v) (set-bit (caddr v) 1 c)))
216216
;; whether var is assigned
217217
(define (vinfo:set-asgn! v a) (set-car! (cddr v) (set-bit (caddr v) 2 a)))
218-
;; whether var is assigned by an inner function
219-
(define (vinfo:set-iasg! v a) (set-car! (cddr v) (set-bit (caddr v) 4 a)))
220218
;; whether var is const
221219
(define (vinfo:set-const! v a) (set-car! (cddr v) (set-bit (caddr v) 8 a)))
222220
;; whether var is assigned once

src/julia-syntax.scm

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2739,9 +2739,7 @@ So far only the second case can actually occur.
27392739
(if (vinfo:asgn vi)
27402740
(vinfo:set-sa! vi #f)
27412741
(vinfo:set-sa! vi #t))
2742-
(vinfo:set-asgn! vi #t)
2743-
(if (assq (car vi) captvars)
2744-
(vinfo:set-iasg! vi #t)))))
2742+
(vinfo:set-asgn! vi #t))))
27452743
`(= ,(cadr e) ,(analyze-vars (caddr e) env captvars sp)))
27462744
((call)
27472745
(let ((vi (var-info-for (cadr e) env)))
@@ -2777,9 +2775,7 @@ So far only the second case can actually occur.
27772775
(begin
27782776
(vinfo:set-asgn! vi #t)
27792777
;; note: method defs require a memory loc. (issue #7658)
2780-
(vinfo:set-sa! vi #f)
2781-
(if (assq (car vi) captvars)
2782-
(vinfo:set-iasg! vi #t)))))
2778+
(vinfo:set-sa! vi #f))))
27832779
(if (length= e 2)
27842780
`(method ,(cadr e))
27852781
`(method ,(cadr e)

0 commit comments

Comments
 (0)