Skip to content

Commit d2375e6

Browse files
authored
Optimize convert_time_unit when units are the same
1 parent c2548e6 commit d2375e6

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

erts/preloaded/src/erlang.erl

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5333,10 +5333,15 @@ convert_time_unit(Time, FromUnit, ToUnit) ->
53335333

53345334
_ when ToUnit > 0 -> ToUnit
53355335
end,
5336-
case Time < 0 of
5337-
true -> TU*Time - (FU - 1);
5338-
false -> TU*Time
5339-
end div FU
5336+
case (FU =:= TU) andalso is_integer(Time) of
5337+
true ->
5338+
Time;
5339+
false ->
5340+
case Time < 0 of
5341+
true -> TU*Time - (FU - 1);
5342+
false -> TU*Time
5343+
end div FU
5344+
end
53405345
catch
53415346
_ : _ ->
53425347
error_with_info(badarg, [Time, FromUnit, ToUnit])

0 commit comments

Comments
 (0)