Skip to content

Commit

Permalink
remove symbol references no longer used in the runtime system
Browse files Browse the repository at this point in the history
  • Loading branch information
JeffBezanson committed Jul 26, 2018
1 parent 04dbf7a commit 1fa57f3
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 60 deletions.
34 changes: 9 additions & 25 deletions src/ast.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,45 +27,36 @@ extern "C" {

// head symbols for each expression type
jl_sym_t *call_sym; jl_sym_t *invoke_sym;
jl_sym_t *dots_sym; jl_sym_t *empty_sym;
jl_sym_t *empty_sym; jl_sym_t *top_sym;
jl_sym_t *module_sym; jl_sym_t *slot_sym;
jl_sym_t *export_sym; jl_sym_t *import_sym;
jl_sym_t *importall_sym; jl_sym_t *toplevel_sym;
jl_sym_t *quote_sym; jl_sym_t *amp_sym;
jl_sym_t *top_sym; jl_sym_t *colons_sym;
jl_sym_t *line_sym; jl_sym_t *jl_incomplete_sym;
jl_sym_t *goto_sym; jl_sym_t *goto_ifnot_sym;
jl_sym_t *label_sym; jl_sym_t *return_sym;
jl_sym_t *unreachable_sym; jl_sym_t *tuple_sym;
jl_sym_t *return_sym; jl_sym_t *unreachable_sym;
jl_sym_t *lambda_sym; jl_sym_t *assign_sym;
jl_sym_t *body_sym; jl_sym_t *globalref_sym;
jl_sym_t *globalref_sym; jl_sym_t *do_sym;
jl_sym_t *method_sym; jl_sym_t *core_sym;
jl_sym_t *enter_sym; jl_sym_t *leave_sym;
jl_sym_t *exc_sym; jl_sym_t *error_sym;
jl_sym_t *new_sym; jl_sym_t *using_sym;
jl_sym_t *const_sym; jl_sym_t *thunk_sym;
jl_sym_t *underscore_sym; jl_sym_t *do_sym;
jl_sym_t *abstracttype_sym;
jl_sym_t *primtype_sym;
jl_sym_t *structtype_sym;
jl_sym_t *foreigncall_sym;
jl_sym_t *cfunction_sym;
jl_sym_t *abstracttype_sym; jl_sym_t *primtype_sym;
jl_sym_t *structtype_sym; jl_sym_t *foreigncall_sym;
jl_sym_t *global_sym; jl_sym_t *list_sym;
jl_sym_t *dot_sym; jl_sym_t *newvar_sym;
jl_sym_t *boundscheck_sym; jl_sym_t *inbounds_sym;
jl_sym_t *copyast_sym; jl_sym_t *fastmath_sym;
jl_sym_t *copyast_sym; jl_sym_t *cfunction_sym;
jl_sym_t *pure_sym; jl_sym_t *simdloop_sym;
jl_sym_t *meta_sym; jl_sym_t *compiler_temp_sym;
jl_sym_t *inert_sym; jl_sym_t *vararg_sym;
jl_sym_t *inert_sym; jl_sym_t *polly_sym;
jl_sym_t *unused_sym; jl_sym_t *static_parameter_sym;
jl_sym_t *inline_sym; jl_sym_t *noinline_sym;
jl_sym_t *polly_sym;
jl_sym_t *propagate_inbounds_sym;
jl_sym_t *generated_sym; jl_sym_t *generated_only_sym;
jl_sym_t *isdefined_sym;
jl_sym_t *isdefined_sym; jl_sym_t *propagate_inbounds_sym;
jl_sym_t *specialize_sym; jl_sym_t *nospecialize_sym;
jl_sym_t *macrocall_sym;
jl_sym_t *colon_sym;
jl_sym_t *macrocall_sym; jl_sym_t *colon_sym;
jl_sym_t *hygienicscope_sym; jl_sym_t *escape_sym;
jl_sym_t *gc_preserve_begin_sym; jl_sym_t *gc_preserve_end_sym;
jl_sym_t *throw_undef_if_not_sym; jl_sym_t *getfield_undefref_sym;
Expand Down Expand Up @@ -336,19 +327,15 @@ void jl_init_frontend(void)
error_sym = jl_symbol("error");
goto_sym = jl_symbol("goto");
goto_ifnot_sym = jl_symbol("gotoifnot");
label_sym = jl_symbol("label");
return_sym = jl_symbol("return");
unreachable_sym = jl_symbol("unreachable");
tuple_sym = jl_symbol("tuple");
lambda_sym = jl_symbol("lambda");
module_sym = jl_symbol("module");
export_sym = jl_symbol("export");
import_sym = jl_symbol("import");
using_sym = jl_symbol("using");
importall_sym = jl_symbol("importall");
assign_sym = jl_symbol("=");
body_sym = jl_symbol("body");
colons_sym = jl_symbol("::");
method_sym = jl_symbol("method");
exc_sym = jl_symbol("the_exception");
enter_sym = jl_symbol("enter");
Expand All @@ -357,7 +344,6 @@ void jl_init_frontend(void)
const_sym = jl_symbol("const");
global_sym = jl_symbol("global");
thunk_sym = jl_symbol("thunk");
underscore_sym = jl_symbol("_");
amp_sym = jl_symbol("&");
abstracttype_sym = jl_symbol("abstract_type");
primtype_sym = jl_symbol("primitive_type");
Expand All @@ -367,13 +353,11 @@ void jl_init_frontend(void)
colon_sym = jl_symbol(":");
boundscheck_sym = jl_symbol("boundscheck");
inbounds_sym = jl_symbol("inbounds");
fastmath_sym = jl_symbol("fastmath");
newvar_sym = jl_symbol("newvar");
copyast_sym = jl_symbol("copyast");
simdloop_sym = jl_symbol("simdloop");
pure_sym = jl_symbol("pure");
meta_sym = jl_symbol("meta");
dots_sym = jl_symbol("...");
list_sym = jl_symbol("list");
unused_sym = jl_symbol("#unused#");
slot_sym = jl_symbol("slot");
Expand Down
3 changes: 1 addition & 2 deletions src/interpreter.c
Original file line number Diff line number Diff line change
Expand Up @@ -511,8 +511,7 @@ SECT_INTERP static jl_value_t *eval_value(jl_value_t *e, interpreter_state *s)
else if (head == boundscheck_sym) {
return jl_true;
}
else if (head == meta_sym || head == inbounds_sym ||
head == fastmath_sym || head == simdloop_sym) {
else if (head == meta_sym || head == inbounds_sym || head == simdloop_sym) {
return jl_nothing;
}
else if (head == gc_preserve_begin_sym || head == gc_preserve_end_sym) {
Expand Down
3 changes: 1 addition & 2 deletions src/jltypes.c
Original file line number Diff line number Diff line change
Expand Up @@ -1819,10 +1819,9 @@ void jl_init_types(void)
jl_svec(2, jl_tvar_type, jl_any_type),
0, 0, 2);

vararg_sym = jl_symbol("Vararg");
jl_svec_t *tv;
tv = jl_svec2(tvar("T"),tvar("N"));
jl_vararg_type = (jl_unionall_t*)jl_new_abstracttype((jl_value_t*)vararg_sym, core, jl_any_type, tv)->name->wrapper;
jl_vararg_type = (jl_unionall_t*)jl_new_abstracttype((jl_value_t*)jl_symbol("Vararg"), core, jl_any_type, tv)->name->wrapper;
jl_vararg_typename = ((jl_datatype_t*)jl_unwrap_unionall((jl_value_t*)jl_vararg_type))->name;

jl_anytuple_type = jl_new_datatype(jl_symbol("Tuple"), core, jl_any_type, jl_emptysvec,
Expand Down
55 changes: 24 additions & 31 deletions src/julia_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -936,46 +936,39 @@ void jl_log(int level, jl_value_t *module, jl_value_t *group, jl_value_t *id,
int isabspath(const char *in);

extern jl_sym_t *call_sym; extern jl_sym_t *invoke_sym;
extern jl_sym_t *empty_sym; extern jl_sym_t *body_sym;
extern jl_sym_t *dots_sym; extern jl_sym_t *vararg_sym;
extern jl_sym_t *quote_sym; extern jl_sym_t *newvar_sym;
extern jl_sym_t *top_sym; extern jl_sym_t *dot_sym;
extern jl_sym_t *line_sym; extern jl_sym_t *toplevel_sym;
extern jl_sym_t *core_sym; extern jl_sym_t *globalref_sym;
extern jl_sym_t *error_sym; extern jl_sym_t *amp_sym;
extern jl_sym_t *module_sym; extern jl_sym_t *colons_sym;
extern jl_sym_t *empty_sym; extern jl_sym_t *top_sym;
extern jl_sym_t *module_sym; extern jl_sym_t *slot_sym;
extern jl_sym_t *export_sym; extern jl_sym_t *import_sym;
extern jl_sym_t *importall_sym; extern jl_sym_t *using_sym;
extern jl_sym_t *importall_sym; extern jl_sym_t *toplevel_sym;
extern jl_sym_t *quote_sym; extern jl_sym_t *amp_sym;
extern jl_sym_t *line_sym; extern jl_sym_t *jl_incomplete_sym;
extern jl_sym_t *goto_sym; extern jl_sym_t *goto_ifnot_sym;
extern jl_sym_t *label_sym; extern jl_sym_t *return_sym;
extern jl_sym_t *unreachable_sym; extern jl_sym_t *tuple_sym;
extern jl_sym_t *return_sym; extern jl_sym_t *unreachable_sym;
extern jl_sym_t *lambda_sym; extern jl_sym_t *assign_sym;
extern jl_sym_t *method_sym; extern jl_sym_t *slot_sym;
extern jl_sym_t *globalref_sym; extern jl_sym_t *do_sym;
extern jl_sym_t *method_sym; extern jl_sym_t *core_sym;
extern jl_sym_t *enter_sym; extern jl_sym_t *leave_sym;
extern jl_sym_t *exc_sym; extern jl_sym_t *new_sym;
extern jl_sym_t *compiler_temp_sym;
extern jl_sym_t *foreigncall_sym;
extern jl_sym_t *cfunction_sym;
extern jl_sym_t *exc_sym; extern jl_sym_t *error_sym;
extern jl_sym_t *new_sym; extern jl_sym_t *using_sym;
extern jl_sym_t *const_sym; extern jl_sym_t *thunk_sym;
extern jl_sym_t *underscore_sym; extern jl_sym_t *colon_sym;
extern jl_sym_t *abstracttype_sym; extern jl_sym_t *primtype_sym;
extern jl_sym_t *structtype_sym;
extern jl_sym_t *global_sym; extern jl_sym_t *unused_sym;
extern jl_sym_t *structtype_sym; extern jl_sym_t *foreigncall_sym;
extern jl_sym_t *global_sym; extern jl_sym_t *list_sym;
extern jl_sym_t *dot_sym; extern jl_sym_t *newvar_sym;
extern jl_sym_t *boundscheck_sym; extern jl_sym_t *inbounds_sym;
extern jl_sym_t *copyast_sym; extern jl_sym_t *fastmath_sym;
extern jl_sym_t *copyast_sym; extern jl_sym_t *cfunction_sym;
extern jl_sym_t *pure_sym; extern jl_sym_t *simdloop_sym;
extern jl_sym_t *meta_sym; extern jl_sym_t *list_sym;
extern jl_sym_t *inert_sym; extern jl_sym_t *static_parameter_sym;
extern jl_sym_t *inline_sym; extern jl_sym_t *noinline_sym;
extern jl_sym_t *polly_sym;
extern jl_sym_t *propagate_inbounds_sym;
extern jl_sym_t *isdefined_sym;
extern jl_sym_t *nospecialize_sym; extern jl_sym_t *specialize_sym;
extern jl_sym_t *boundscheck_sym;
extern jl_sym_t *gc_preserve_begin_sym; extern jl_sym_t *gc_preserve_end_sym;
extern jl_sym_t *meta_sym; extern jl_sym_t *compiler_temp_sym;
extern jl_sym_t *inert_sym; extern jl_sym_t *polly_sym;
extern jl_sym_t *unused_sym; extern jl_sym_t *static_parameter_sym;
extern jl_sym_t *inline_sym; extern jl_sym_t *noinline_sym;
extern jl_sym_t *generated_sym; extern jl_sym_t *generated_only_sym;
extern jl_sym_t *throw_undef_if_not_sym;
extern jl_sym_t *getfield_undefref_sym;
extern jl_sym_t *isdefined_sym; extern jl_sym_t *propagate_inbounds_sym;
extern jl_sym_t *specialize_sym; extern jl_sym_t *nospecialize_sym;
extern jl_sym_t *macrocall_sym; extern jl_sym_t *colon_sym;
extern jl_sym_t *hygienicscope_sym; extern jl_sym_t *escape_sym;
extern jl_sym_t *gc_preserve_begin_sym; extern jl_sym_t *gc_preserve_end_sym;
extern jl_sym_t *throw_undef_if_not_sym; extern jl_sym_t *getfield_undefref_sym;

struct _jl_sysimg_fptrs_t;

Expand Down

0 comments on commit 1fa57f3

Please sign in to comment.