py: For optimization level -O3 and higher, remove lineno info from bytecode.

pull/649/head
Paul Sokolovsky 2014-06-02 19:39:15 +03:00
rodzic d3439d0c60
commit b8f117dd32
1 zmienionych plików z 4 dodań i 0 usunięć

Wyświetl plik

@ -352,6 +352,10 @@ STATIC void emit_bc_adjust_stack_size(emit_t *emit, int delta) {
STATIC void emit_bc_set_source_line(emit_t *emit, int source_line) {
//printf("source: line %d -> %d offset %d -> %d\n", emit->last_source_line, source_line, emit->last_source_line_offset, emit->bytecode_offset);
#if MICROPY_ENABLE_SOURCE_LINE
if (mp_optimise_value >= 3) {
// If we compile with -O3, don't store line numbers.
return;
}
if (source_line > emit->last_source_line) {
uint bytes_to_skip = emit->bytecode_offset - emit->last_source_line_offset;
uint lines_to_skip = source_line - emit->last_source_line;