diff options
author | Patrik Nyblom <[email protected]> | 2011-11-15 20:10:21 +0100 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2011-12-02 15:26:16 +0100 |
commit | e04704b1f40511a6e1090b4cb04ef543580cdcc7 (patch) | |
tree | 53b552ed234927259261550f49e88629389e6ba2 /erts/emulator/beam/erl_bif_guard.c | |
parent | e78a1582dc13d770bf1a9de64ff817369c741ef5 (diff) | |
download | otp-e04704b1f40511a6e1090b4cb04ef543580cdcc7.tar.gz otp-e04704b1f40511a6e1090b4cb04ef543580cdcc7.tar.bz2 otp-e04704b1f40511a6e1090b4cb04ef543580cdcc7.zip |
Iron out bugs in Win64 found in daily builds
Almost all uses of the 'long' datatype is removed from VM and tests
Emulator test now runs w/o drivers crashing
Nasty abs bug fixed in VM as well as type errors in allocator debug functions
Still one allocator test that fails, domain knowledge is needed to fix that.
Fix type inconsistency in beam_load causing crashes
Diffstat (limited to 'erts/emulator/beam/erl_bif_guard.c')
-rw-r--r-- | erts/emulator/beam/erl_bif_guard.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_bif_guard.c b/erts/emulator/beam/erl_bif_guard.c index 01e6977a2c..dff59de69b 100644 --- a/erts/emulator/beam/erl_bif_guard.c +++ b/erts/emulator/beam/erl_bif_guard.c @@ -52,7 +52,7 @@ BIF_RETTYPE abs_1(BIF_ALIST_1) /* integer arguments */ if (is_small(BIF_ARG_1)) { i0 = signed_val(BIF_ARG_1); - i = labs(i0); + i = ERTS_SMALL_ABS(i0); if (i0 == MIN_SMALL) { hp = HAlloc(BIF_P, BIG_UINT_HEAP_SIZE); BIF_RET(uint_to_big(i, hp)); @@ -467,7 +467,7 @@ Eterm erts_gc_abs_1(Process* p, Eterm* reg, Uint live) /* integer arguments */ if (is_small(arg)) { i0 = signed_val(arg); - i = labs(i0); + i = ERTS_SMALL_ABS(i0); if (i0 == MIN_SMALL) { if (ERTS_NEED_GC(p, BIG_UINT_HEAP_SIZE)) { erts_garbage_collect(p, BIG_UINT_HEAP_SIZE, reg, live+1); |