DescriptionSimple toplevel code generator support for short-circuited boolean OR
in a non-test (ie, value or effect) context. (It is implicitly not in
a test context because the code generator does not support expressions
in a test context yet.)
Compilation is essentially the same as in the optimized code
generator. The expression (e0 || e1) is compiled as if it were
(let (temp = e0) temp ? temp : e1).
On ia32 and x64 a single shared ToBoolean stub is used to convert a
value to a flag. The inlined checks assumed by the stub are reordered
to compare to undefined (the common case in toplevel code?) first. On
ARM a call to the runtime is used. In the interest of code size no
checks are yet inlined on ARM.
Committed: http://code.google.com/p/v8/source/detail?r=3118
Patch Set 1 #Patch Set 2 : '' #
Total comments: 2
Messages
Total messages: 3 (0 generated)
|