sccp_011.phpt 727 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. --TEST--
  2. SCCP 011: Conditional Constant Propagation of non-escaping object properties
  3. --INI--
  4. opcache.enable=1
  5. opcache.enable_cli=1
  6. opcache.optimization_level=-1
  7. opcache.opt_debug_level=0x20000
  8. opcache.preload=
  9. --EXTENSIONS--
  10. opcache
  11. --FILE--
  12. <?php
  13. function foo(int $x) {
  14. $o = new stdClass;
  15. if ($x) {
  16. $o->foo = 0;
  17. $o->bar = 1;
  18. } else {
  19. $o->foo = 0;
  20. $o->bar = 2;
  21. }
  22. echo $o->foo;
  23. }
  24. ?>
  25. --EXPECTF--
  26. $_main:
  27. ; (lines=1, args=0, vars=0, tmps=0)
  28. ; (after optimizer)
  29. ; %ssccp_011.php:1-14
  30. 0000 RETURN int(1)
  31. foo:
  32. ; (lines=3, args=1, vars=1, tmps=0)
  33. ; (after optimizer)
  34. ; %ssccp_011.php:2-12
  35. 0000 CV0($x) = RECV 1
  36. 0001 ECHO string("0")
  37. 0002 RETURN null