diff options
author | John Högberg <john@erlang.org> | 2021-10-07 11:30:15 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-07 11:30:15 +0200 |
commit | 6cc8910f903ec82f81b0cc264bbdba7a950b09be (patch) | |
tree | df05fc84cf9b43ed5520a1505bf8c6fb92dd210d | |
parent | 25377d8122458c28d3af7d034b789a045e1aaaa2 (diff) | |
parent | 899324fdf37dd9a80130f60f94e8ac855f62ea4f (diff) | |
download | erlang-6cc8910f903ec82f81b0cc264bbdba7a950b09be.tar.gz |
Merge pull request #5266 from jhogberg/john/erts/more-autumn-cleaning
erts: Remove some unused cruft
-rw-r--r-- | erts/emulator/beam/emu/emu_load.c | 5 | ||||
-rw-r--r-- | erts/emulator/beam/emu/load.h | 5 | ||||
-rw-r--r-- | erts/emulator/beam/jit/arm/instr_bif.cpp | 2 | ||||
-rw-r--r-- | erts/emulator/beam/jit/asm_load.c | 5 | ||||
-rw-r--r-- | erts/emulator/beam/jit/beam_jit_common.cpp | 102 | ||||
-rw-r--r-- | erts/emulator/beam/jit/beam_jit_common.hpp | 6 | ||||
-rw-r--r-- | erts/emulator/beam/jit/load.h | 2 |
7 files changed, 1 insertions, 126 deletions
diff --git a/erts/emulator/beam/emu/emu_load.c b/erts/emulator/beam/emu/emu_load.c index 6ca9f28f4c..fa0372be87 100644 --- a/erts/emulator/beam/emu/emu_load.c +++ b/erts/emulator/beam/emu/emu_load.c @@ -157,11 +157,6 @@ int beam_load_prepared_dtor(Binary* magic) beamfile_free(&stp->beam); beamopallocator_dtor(&stp->op_allocator); - if (stp->bin) { - driver_free_binary(stp->bin); - stp->bin = NULL; - } - if (stp->code_hdr) { BeamCodeHeader *hdr = stp->code_hdr; diff --git a/erts/emulator/beam/emu/load.h b/erts/emulator/beam/emu/load.h index 83e8ace504..561327a870 100644 --- a/erts/emulator/beam/emu/load.h +++ b/erts/emulator/beam/emu/load.h @@ -94,11 +94,6 @@ typedef struct { */ struct LoaderState_ { /* - * The current logical file within the binary. - */ - ErlDrvBinary* bin; /* Binary holding BEAM file (or NULL) */ - - /* * The following are used mainly for diagnostics. */ diff --git a/erts/emulator/beam/jit/arm/instr_bif.cpp b/erts/emulator/beam/jit/arm/instr_bif.cpp index 199a517e0d..3b8498b1fa 100644 --- a/erts/emulator/beam/jit/arm/instr_bif.cpp +++ b/erts/emulator/beam/jit/arm/instr_bif.cpp @@ -808,7 +808,7 @@ void BeamGlobalAssembler::emit_call_nif_shared(void) { Update::eReductions>(); #ifdef ERTS_MSACC_EXTENDED_STATES - { /* ToDO: x86 -> arm */ + { Label skip_msacc = a.newLabel(); a.ldr(TMP1, erts_msacc_cache); diff --git a/erts/emulator/beam/jit/asm_load.c b/erts/emulator/beam/jit/asm_load.c index 744fb9bcfe..a50236ed7f 100644 --- a/erts/emulator/beam/jit/asm_load.c +++ b/erts/emulator/beam/jit/asm_load.c @@ -191,11 +191,6 @@ int beam_load_prepared_dtor(Binary *magic) { beamfile_free(&stp->beam); beamopallocator_dtor(&stp->op_allocator); - if (stp->bin) { - driver_free_binary(stp->bin); - stp->bin = NULL; - } - if (stp->load_hdr) { BeamCodeHeader *hdr = stp->load_hdr; diff --git a/erts/emulator/beam/jit/beam_jit_common.cpp b/erts/emulator/beam/jit/beam_jit_common.cpp index 9ea3eb5e4f..c372bcea2c 100644 --- a/erts/emulator/beam/jit/beam_jit_common.cpp +++ b/erts/emulator/beam/jit/beam_jit_common.cpp @@ -569,79 +569,6 @@ void beam_jit_bs_add_argument_error(Process *c_p, Eterm A, Eterm B) { } } -static Eterm i_bs_start_match2_gc_test_preserve(Process *c_p, - Eterm *reg, - Uint need, - Uint live, - Eterm preserve) { - Uint words_left = (Uint)(STACK_TOP(c_p) - HEAP_TOP(c_p)); - - if (ERTS_UNLIKELY(words_left < need + S_RESERVED)) { - reg[live] = preserve; - PROCESS_MAIN_CHK_LOCKS(c_p); - c_p->fcalls -= erts_garbage_collect_nobump(c_p, - need, - reg, - live + 1, - c_p->fcalls); - ERTS_VERIFY_UNUSED_TEMP_ALLOC(c_p); - PROCESS_MAIN_CHK_LOCKS(c_p); - preserve = reg[live]; - } - - return preserve; -} - -Eterm beam_jit_bs_start_match2(Eterm context, - Uint live, - Uint slots, - Process *c_p, - Eterm *reg) { - Eterm header; - if (!is_boxed(context)) { - return THE_NON_VALUE; - } - header = *boxed_val(context); - - slots++; - - if (header_is_bin_matchstate(header)) { - ErlBinMatchState *ms = (ErlBinMatchState *)boxed_val(context); - Uint actual_slots = HEADER_NUM_SLOTS(header); - - /* We're not compatible with contexts created by bs_start_match3. */ - ASSERT(actual_slots >= 1); - - ms->save_offset[0] = ms->mb.offset; - if (ERTS_UNLIKELY(actual_slots < slots)) { - ErlBinMatchState *expanded; - Uint wordsneeded = ERL_BIN_MATCHSTATE_SIZE(slots); - context = i_bs_start_match2_gc_test_preserve(c_p, - reg, - wordsneeded, - live, - context); - ms = (ErlBinMatchState *)boxed_val(context); - expanded = (ErlBinMatchState *)HEAP_TOP(c_p); - *expanded = *ms; - *HEAP_TOP(c_p) = HEADER_BIN_MATCHSTATE(slots); - HEAP_TOP(c_p) += wordsneeded; - context = make_matchstate(expanded); - } - return context; - } else if (is_binary_header(header)) { - Uint wordsneeded = ERL_BIN_MATCHSTATE_SIZE(slots); - context = i_bs_start_match2_gc_test_preserve(c_p, - reg, - wordsneeded, - live, - context); - return erts_bs_start_match_2(c_p, context, slots); - } else { - return THE_NON_VALUE; - } -} - Eterm beam_jit_bs_init(Process *c_p, Eterm *reg, ERL_BITS_DECLARE_STATEP, @@ -815,35 +742,6 @@ Eterm beam_jit_bs_get_integer(Process *c_p, return erts_bs_get_integer_2(c_p, size, flags, mb); } -void beam_jit_bs_context_to_binary(Eterm context) { - if (is_boxed(context) && header_is_bin_matchstate(*boxed_val(context))) { - Uint orig, size, offs, hole_size; - ErlBinMatchBuffer *mb; - ErlBinMatchState *ms; - ErlSubBin *sb; - ms = (ErlBinMatchState *)boxed_val(context); - mb = &ms->mb; - offs = ms->save_offset[0]; - size = mb->size - offs; - orig = mb->orig; - sb = (ErlSubBin *)boxed_val(context); - /* Since we're going to overwrite the match state with the result, an - * ErlBinMatchState must be at least as large as an ErlSubBin. */ - ERTS_CT_ASSERT(sizeof(ErlSubBin) <= sizeof(ErlBinMatchState)); - hole_size = 1 + header_arity(sb->thing_word) - ERL_SUB_BIN_SIZE; - sb->thing_word = HEADER_SUB_BIN; - sb->size = BYTE_OFFSET(size); - sb->bitsize = BIT_OFFSET(size); - sb->offs = BYTE_OFFSET(offs); - sb->bitoffs = BIT_OFFSET(offs); - sb->is_writable = 0; - sb->orig = orig; - if (hole_size) { - sb[1].thing_word = make_pos_bignum_header(hole_size - 1); - } - } -} - ErtsMessage *beam_jit_decode_dist(Process *c_p, ErtsMessage *msgp) { if (!erts_proc_sig_decode_dist(c_p, ERTS_PROC_LOCK_MAIN, msgp, 0)) { /* diff --git a/erts/emulator/beam/jit/beam_jit_common.hpp b/erts/emulator/beam/jit/beam_jit_common.hpp index 019f241a7e..ca73395006 100644 --- a/erts/emulator/beam/jit/beam_jit_common.hpp +++ b/erts/emulator/beam/jit/beam_jit_common.hpp @@ -266,11 +266,6 @@ Uint beam_jit_get_map_elements(Eterm map, void beam_jit_bs_field_size_argument_error(Process *c_p, Eterm size); void beam_jit_bs_add_argument_error(Process *c_p, Eterm A, Eterm B); -Eterm beam_jit_bs_start_match2(Eterm context, - Uint live, - Uint slots, - Process *c_p, - Eterm *reg); Eterm beam_jit_bs_init(Process *c_p, Eterm *reg, ERL_BITS_DECLARE_STATEP, @@ -296,7 +291,6 @@ Sint beam_jit_remove_message(Process *c_p, Eterm *HTOP, Eterm *E, Uint32 active_code_ix); -void beam_jit_bs_context_to_binary(Eterm context); void beam_jit_take_receive_lock(Process *c_p); void beam_jit_wait_locked(Process *c_p, ErtsCodePtr cp); diff --git a/erts/emulator/beam/jit/load.h b/erts/emulator/beam/jit/load.h index 12299d5727..dff5852429 100644 --- a/erts/emulator/beam/jit/load.h +++ b/erts/emulator/beam/jit/load.h @@ -43,8 +43,6 @@ typedef struct { /* This structure contains all information about the module being loaded. */ struct LoaderState_ { - ErlDrvBinary *bin; /* Binary holding BEAM file (or NULL) */ - /* * The following are used mainly for diagnostics. */ |