2
2
V8\Script::Run() - out of memory example
3
3
--SKIPIF--
4
4
<?php if (!extension_loaded ("v8 " )) print "skip " ; ?>
5
- <?php if (!getenv ("DEV_TESTS " )) print "skip " ; ?>
5
+ <?php // if (!getenv("DEV_TESTS")) print "skip"; ?>
6
6
--FILE--
7
7
<?php
8
8
/** @var \Phpv8Testsuite $helper */
@@ -24,10 +24,10 @@ $context = new V8\Context($isolate, $extensions, $global_template);
24
24
// This causes segfault
25
25
$ source = '
26
26
x = \'x \';
27
- var multiply = 27 ;
27
+ var multiply = 25 ;
28
28
29
29
while (multiply-- > 0){
30
- x = ""+ x+x;
30
+ x = x+x;
31
31
print(x.length, "\n");
32
32
}
33
33
@@ -78,39 +78,55 @@ $helper->header('Object');
78
78
$ helper ->value_matches_with_no_output ($ res , $ obj );
79
79
80
80
?>
81
- --EXPECT--
82
- Checks on V8\StringValue:
83
- --------------------
84
- V8\StringValue::IsUndefined(): false
85
- V8\StringValue::IsNull(): false
86
- V8\StringValue::IsTrue(): false
87
- V8\StringValue::IsFalse(): false
88
- V8\StringValue::IsString(): true
89
- V8\StringValue::IsFunction(): false
90
- V8\StringValue::IsArray(): false
91
- V8\StringValue::IsObject(): false
92
- V8\StringValue::IsBoolean(): false
93
- V8\StringValue::IsNumber(): false
94
- V8\StringValue::IsInt32(): false
95
- V8\StringValue::IsUint32(): false
96
- V8\StringValue::IsDate(): false
97
- V8\StringValue::IsArgumentsObject(): false
98
- V8\StringValue::IsBooleanObject(): false
99
- V8\StringValue::IsNumberObject(): false
100
- V8\StringValue::IsStringObject(): false
101
- V8\StringValue::IsNativeError(): false
102
- V8\StringValue::IsRegExp(): false
103
-
104
-
105
- string(25) "TEST VALUE 111, confirmed" refcount(1)
106
-
107
-
108
- Scalar:
109
- -------
110
- Expected 123 value is identical to actual value 123
111
- Expected value is not identical to actual value
112
-
113
-
114
- Object:
115
- -------
116
- Expected value is identical to actual value
81
+ --EXPECTF--
82
+ 2
83
+ 4
84
+ 8
85
+ 16
86
+ 32
87
+ 64
88
+ 128
89
+ 256
90
+ 512
91
+ 1024
92
+ 2048
93
+ 4096
94
+ 8192
95
+ 16384
96
+ 32768
97
+ 65536
98
+ 131072
99
+ 262144
100
+ 524288
101
+ 1048576
102
+ 2097152
103
+ 4194304
104
+ 8388608
105
+ 16777216
106
+ 33554432
107
+
108
+
109
+
110
+ Fatal error: V8 OOM hit: location=invalid array length, is_heap_oom=yes
111
+ in %s/V8Script_Run_out_of_memory.php on line 44
112
+
113
+ <--- Last few GCs --->
114
+
115
+ %s %d ms: Mark-sweep %f (%f) -> %f (%f) MB, %f / %f ms %s
116
+ %s %d ms: Mark-sweep %f (%f) -> %f (%f) MB, %f / %f ms %s
117
+ %s %d ms: Mark-sweep %f (%f) -> %f (%f) MB, %f / %f ms %s
118
+
119
+
120
+ <--- JS stacktrace --->
121
+
122
+ ==== JS stack trace =========================================
123
+
124
+ Security context: 0x%x <JS Object>
125
+ 2: /* anonymous */ [test.js:~1] [pc=0x%x](this=0x%x <JS Global Object>)
126
+
127
+ ==== Details ================================================
128
+
129
+ [2]: /* anonymous */ [test.js:~1] [pc=0x%x](this=0x%x <JS Global Object>) {
130
+ // optimized frame
131
+ --------- s o u r c e c o d e ---------
132
+ %s
0 commit comments