Skip to content

Instantly share code, notes, and snippets.

@hasselmm
Last active March 6, 2025 13:33
Show Gist options
  • Save hasselmm/6b39667b4120fb1a8d59099a346e021b to your computer and use it in GitHub Desktop.
Save hasselmm/6b39667b4120fb1a8d59099a346e021b to your computer and use it in GitHub Desktop.
function inputsNotEmpty(inArr) {
return inArr.every(inp => {
return inp.value != '';
});
}
inputsNotEmpty([]);
[generated bytecode for function: inputsNotEmpty (0x2500a1ad4fa1 <SharedFunctionInfo inputsNotEmpty>)]
Bytecode length: 16
Parameter count 2
Register count 3
Frame size 24
OSR urgency: 0
Bytecode age: 0
50 S> 0x2500a1ad5bf0 @ 0 : 2d 03 00 00 GetNamedProperty a0, [0], [0]
0x2500a1ad5bf4 @ 4 : c4 Star0
0x2500a1ad5bf5 @ 5 : 80 01 00 02 CreateClosure [1], [0], #2
0x2500a1ad5bf9 @ 9 : c2 Star2
50 E> 0x2500a1ad5bfa @ 10 : 5e fa 03 f8 02 CallProperty1 r0, a0, r2, [2]
104 S> 0x2500a1ad5bff @ 15 : a9 Return
Constant pool (size = 2)
0x2500a1ad5b99: [FixedArray] in OldSpace
- map: 0x1c847d7412e1 <Map>
- length: 2
0: 0x2fe5acf41941 <String[5]: #every>
1: 0x2500a1ad5b49 <SharedFunctionInfo>
Handler Table (size = 0)
Source Position Table (size = 9)
0x2500a1ad5c01 <ByteArray[9]>
[generated bytecode for function: (0x2500a1ad5b49 <SharedFunctionInfo>)]
Bytecode length: 12
Parameter count 2
Register count 1
Frame size 8
OSR urgency: 0
Bytecode age: 0
84 S> 0x2500a1ad5d08 @ 0 : 2d 03 00 00 GetNamedProperty a0, [0], [0]
0x2500a1ad5d0c @ 4 : c4 Star0
0x2500a1ad5d0d @ 5 : 13 01 LdaConstant [1]
90 E> 0x2500a1ad5d0f @ 7 : 6b fa 02 TestEqual r0, [2]
0x2500a1ad5d12 @ 10 : 56 LogicalNot
96 S> 0x2500a1ad5d13 @ 11 : a9 Return
Constant pool (size = 2)
0x2500a1ad5cb1: [FixedArray] in OldSpace
- map: 0x1c847d7412e1 <Map>
- length: 2
0: 0x1c847d746419 <String[5]: #value>
1: 0x1c847d7417d1 <String[0]: #>
Handler Table (size = 0)
Source Position Table (size = 9)
0x2500a1ad5d19 <ByteArray[9]>
function inputsNotEmpty(inArr) {
for (let inp of inArr) {
if (inp.value != '')
return true;
}
return false;
}
inputsNotEmpty([]);
[generated bytecode for function: inputsNotEmpty (0x2e41b4d8f4b1 <SharedFunctionInfo inputsNotEmpty>)]
Bytecode length: 145
Parameter count 2
Register count 13
Frame size 104
OSR urgency: 0
Bytecode age: 0
53 S> 0x2e41b4d8fff8 @ 0 : b1 03 00 02 GetIterator a0, [0], [2]
0x2e41b4d8fffc @ 4 : 9f 07 JumpIfJSReceiver [7] (0x2e41b4d90003 @ 11)
0x2e41b4d8fffe @ 6 : 65 c7 00 fa 00 CallRuntime [ThrowSymbolIteratorInvalid], r0-r0
0x2e41b4d90003 @ 11 : c0 Star4
0x2e41b4d90004 @ 12 : 2d f6 00 04 GetNamedProperty r4, [0], [4]
0x2e41b4d90008 @ 16 : c1 Star3
0x2e41b4d90009 @ 17 : 12 LdaFalse
0x2e41b4d9000a @ 18 : bf Star5
0x2e41b4d9000b @ 19 : 19 ff f2 Mov <context>, r8
0x2e41b4d9000e @ 22 : 11 LdaTrue
0x2e41b4d9000f @ 23 : bf Star5
46 S> 0x2e41b4d90010 @ 24 : 5d f7 f6 06 CallProperty0 r3, r4, [6]
0x2e41b4d90014 @ 28 : bb Star9
0x2e41b4d90015 @ 29 : 9f 07 JumpIfJSReceiver [7] (0x2e41b4d9001c @ 36)
0x2e41b4d90017 @ 31 : 65 be 00 f1 01 CallRuntime [ThrowIteratorResultNotAnObject], r9-r9
0x2e41b4d9001c @ 36 : 2d f1 01 08 GetNamedProperty r9, [1], [8]
0x2e41b4d90020 @ 40 : 96 25 JumpIfToBooleanTrue [37] (0x2e41b4d90045 @ 77)
0x2e41b4d90022 @ 42 : 2d f1 02 0a GetNamedProperty r9, [2], [10]
0x2e41b4d90026 @ 46 : bb Star9
0x2e41b4d90027 @ 47 : 12 LdaFalse
0x2e41b4d90028 @ 48 : bf Star5
0x2e41b4d90029 @ 49 : 19 f1 fa Mov r9, r0
46 S> 0x2e41b4d9002c @ 52 : 19 fa f8 Mov r0, r2
71 S> 0x2e41b4d9002f @ 55 : 2d f8 02 0c GetNamedProperty r2, [2], [12]
0x2e41b4d90033 @ 59 : ba Star10
0x2e41b4d90034 @ 60 : 13 03 LdaConstant [3]
77 E> 0x2e41b4d90036 @ 62 : 6b f0 0e TestEqual r10, [14]
0x2e41b4d90039 @ 65 : 98 09 JumpIfTrue [9] (0x2e41b4d90042 @ 74)
89 S> 0x2e41b4d9003b @ 67 : 11 LdaTrue
0x2e41b4d9003c @ 68 : bd Star7
0x2e41b4d9003d @ 69 : 0d 01 LdaSmi [1]
0x2e41b4d9003f @ 71 : be Star6
0x2e41b4d90040 @ 72 : 8a 0e Jump [14] (0x2e41b4d9004e @ 86)
37 E> 0x2e41b4d90042 @ 74 : 89 34 00 JumpLoop [52], [0] (0x2e41b4d9000e @ 22)
0x2e41b4d90045 @ 77 : 0d ff LdaSmi [-1]
0x2e41b4d90047 @ 79 : bd Star7
0x2e41b4d90048 @ 80 : be Star6
0x2e41b4d90049 @ 81 : 8a 05 Jump [5] (0x2e41b4d9004e @ 86)
0x2e41b4d9004b @ 83 : bd Star7
0x2e41b4d9004c @ 84 : 0c LdaZero
0x2e41b4d9004d @ 85 : be Star6
0x2e41b4d9004e @ 86 : 10 LdaTheHole
0x2e41b4d9004f @ 87 : a6 SetPendingMessage
0x2e41b4d90050 @ 88 : bc Star8
0x2e41b4d90051 @ 89 : 0b f5 Ldar r5
0x2e41b4d90053 @ 91 : 96 23 JumpIfToBooleanTrue [35] (0x2e41b4d90076 @ 126)
0x2e41b4d90055 @ 93 : 19 ff f0 Mov <context>, r10
0x2e41b4d90058 @ 96 : 2d f6 04 0f GetNamedProperty r4, [4], [15]
0x2e41b4d9005c @ 100 : 9e 1a JumpIfUndefinedOrNull [26] (0x2e41b4d90076 @ 126)
0x2e41b4d9005e @ 102 : b9 Star11
0x2e41b4d9005f @ 103 : 5d ef f6 11 CallProperty0 r11, r4, [17]
0x2e41b4d90063 @ 107 : 9f 13 JumpIfJSReceiver [19] (0x2e41b4d90076 @ 126)
0x2e41b4d90065 @ 109 : b8 Star12
0x2e41b4d90066 @ 110 : 65 be 00 ee 01 CallRuntime [ThrowIteratorResultNotAnObject], r12-r12
0x2e41b4d9006b @ 115 : 8a 0b Jump [11] (0x2e41b4d90076 @ 126)
0x2e41b4d9006d @ 117 : ba Star10
0x2e41b4d9006e @ 118 : 0c LdaZero
0x2e41b4d9006f @ 119 : 1c f4 TestReferenceEqual r6
0x2e41b4d90071 @ 121 : 98 05 JumpIfTrue [5] (0x2e41b4d90076 @ 126)
0x2e41b4d90073 @ 123 : 0b f0 Ldar r10
0x2e41b4d90075 @ 125 : a8 ReThrow
0x2e41b4d90076 @ 126 : 0b f2 Ldar r8
0x2e41b4d90078 @ 128 : a6 SetPendingMessage
0x2e41b4d90079 @ 129 : 0b f4 Ldar r6
0x2e41b4d9007b @ 131 : a0 05 02 00 SwitchOnSmiNoFeedback [5], [2], [0] { 0: @137, 1: @140 }
0x2e41b4d9007f @ 135 : 8a 08 Jump [8] (0x2e41b4d90087 @ 143)
0x2e41b4d90081 @ 137 : 0b f3 Ldar r7
0x2e41b4d90083 @ 139 : a8 ReThrow
0x2e41b4d90084 @ 140 : 0b f3 Ldar r7
0x2e41b4d90086 @ 142 : a9 Return
113 S> 0x2e41b4d90087 @ 143 : 12 LdaFalse
126 S> 0x2e41b4d90088 @ 144 : a9 Return
Constant pool (size = 7)
0x2e41b4d8ff79: [FixedArray] in OldSpace
- map: 0x02ea56e812e1 <Map>
- length: 7
0: 0x02ea56e859b1 <String[4]: #next>
1: 0x02ea56e84c71 <String[4]: #done>
2: 0x02ea56e86419 <String[5]: #value>
3: 0x02ea56e817d1 <String[0]: #>
4: 0x02ea56e85e81 <String[6]: #return>
5: 6
6: 9
Handler Table (size = 32)
from to hdlr (prediction, data)
( 22, 77) -> 83 (prediction=0, data=8)
( 96, 115) -> 117 (prediction=0, data=10)
Source Position Table (size = 23)
0x2e41b4d90091 <ByteArray[23]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment