diff options
author | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2016-07-06 18:11:10 -0400 |
---|---|---|
committer | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2016-07-06 18:11:10 -0400 |
commit | f8424b236fabb881cc977b9e8e2e7c8debf56da0 (patch) | |
tree | ffbcb123b366ff6948c5d51fe784f22bbdc9929b /interpret.h | |
parent | 5de217ef7d347b8afa6f6f1fbd20cb84a20ae187 (diff) | |
download | egawk-f8424b236fabb881cc977b9e8e2e7c8debf56da0.tar.gz egawk-f8424b236fabb881cc977b9e8e2e7c8debf56da0.tar.bz2 egawk-f8424b236fabb881cc977b9e8e2e7c8debf56da0.zip |
Now that all fields are NUL-terminated, we can eliminate $n copying in the interpreter.
Diffstat (limited to 'interpret.h')
-rw-r--r-- | interpret.h | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/interpret.h b/interpret.h index bbddd5a7..106367f7 100644 --- a/interpret.h +++ b/interpret.h @@ -363,12 +363,8 @@ uninitialized_scalar: lhs = r_get_field(t1, (Func_ptr *) 0, true); decr_sp(); DEREF(t1); - /* only for $0, up ref count */ - if (*lhs == fields_arr[0]) { - r = *lhs; - UPREF(r); - } else - r = dupnode(*lhs); + r = *lhs; + UPREF(r); PUSH(r); break; |