xref: /PHP-7.4/ext/opcache/tests/opt/dce_001.phpt (revision 12edc453)
1--TEST--
2DCE 001: Remove dead computation after constants propagation
3--INI--
4opcache.enable=1
5opcache.enable_cli=1
6opcache.optimization_level=-1
7opcache.opt_debug_level=0x20000
8opcache.preload=
9--SKIPIF--
10<?php require_once('skipif.inc'); ?>
11--FILE--
12<?php
13function foo(string $s1, string $s2, string $s3, string $s4) {
14	$x = ($s1 . $s2) . ($s3 . $s4);
15	$x = 0;
16	return $x;
17}
18?>
19--EXPECTF--
20$_main: ; (lines=1, args=0, vars=0, tmps=0)
21    ; (after optimizer)
22    ; %sdce_001.php:1-8
23L0 (8):     RETURN int(1)
24
25foo: ; (lines=5, args=4, vars=4, tmps=0)
26    ; (after optimizer)
27    ; %sdce_001.php:2-6
28L0 (2):     CV0($s1) = RECV 1
29L1 (2):     CV1($s2) = RECV 2
30L2 (2):     CV2($s3) = RECV 3
31L3 (2):     CV3($s4) = RECV 4
32L4 (5):     RETURN int(0)
33