@@ -2737,7 +2737,7 @@ static void *zend_jit_ir_compile(ir_ctx *ctx, size_t *size, const char *name)
2737
2737
2738
2738
if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_SRC) {
2739
2739
if (name) fprintf(stderr, "%s: ; after folding\n", name);
2740
- ir_save(ctx, stderr);
2740
+ ir_save(ctx, 0, stderr);
2741
2741
}
2742
2742
2743
2743
#if ZEND_DEBUG
@@ -2756,28 +2756,30 @@ static void *zend_jit_ir_compile(ir_ctx *ctx, size_t *size, const char *name)
2756
2756
2757
2757
if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_SCCP) {
2758
2758
if (name) fprintf(stderr, "%s: ; after SCCP\n", name);
2759
- ir_save(ctx, stderr);
2759
+ ir_save(ctx, 0, stderr);
2760
2760
}
2761
2761
2762
2762
ir_build_cfg(ctx);
2763
2763
ir_build_dominators_tree(ctx);
2764
2764
ir_find_loops(ctx);
2765
2765
2766
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_SCCP) {
2767
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_CFG) {
2768
- ir_dump_cfg(ctx, stderr);
2769
- }
2766
+ if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_CFG) {
2767
+ if (name) fprintf(stderr, "%s: ; after CFG\n", name);
2768
+ ir_save(ctx, IR_SAVE_CFG, stderr);
2770
2769
}
2771
2770
2772
2771
ir_gcm(ctx);
2772
+
2773
+ if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_GCM) {
2774
+ if (name) fprintf(stderr, "%s: ; after GCM\n", name);
2775
+ ir_save(ctx, IR_SAVE_CFG|IR_SAVE_CFG_MAP, stderr);
2776
+ }
2777
+
2773
2778
ir_schedule(ctx);
2774
2779
2775
2780
if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_SCHEDULE) {
2776
2781
if (name) fprintf(stderr, "%s: ; after schedule\n", name);
2777
- ir_save(ctx, stderr);
2778
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_CFG) {
2779
- ir_dump_cfg(ctx, stderr);
2780
- }
2782
+ ir_save(ctx, IR_SAVE_CFG, stderr);
2781
2783
}
2782
2784
2783
2785
ir_match(ctx);
@@ -2791,13 +2793,8 @@ static void *zend_jit_ir_compile(ir_ctx *ctx, size_t *size, const char *name)
2791
2793
2792
2794
if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_AFTER_REGS) {
2793
2795
if (name) fprintf(stderr, "%s: ; after register allocation\n", name);
2794
- ir_save(ctx, stderr);
2795
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_CFG) {
2796
- ir_dump_cfg(ctx, stderr);
2797
- }
2798
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_REGS) {
2799
- ir_dump_live_ranges(ctx, stderr);
2800
- }
2796
+ ir_save(ctx, IR_SAVE_CFG|IR_SAVE_RULES|IR_SAVE_REGS, stderr);
2797
+ ir_dump_live_ranges(ctx, stderr);
2801
2798
}
2802
2799
2803
2800
ir_schedule_blocks(ctx);
@@ -2808,13 +2805,7 @@ static void *zend_jit_ir_compile(ir_ctx *ctx, size_t *size, const char *name)
2808
2805
ir_dump_codegen(ctx, stderr);
2809
2806
} else {
2810
2807
if (name) fprintf(stderr, "%s: ; final\n", name);
2811
- ir_save(ctx, stderr);
2812
- }
2813
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_CFG) {
2814
- ir_dump_cfg(ctx, stderr);
2815
- }
2816
- if (JIT_G(debug) & ZEND_JIT_DEBUG_IR_REGS) {
2817
- ir_dump_live_ranges(ctx, stderr);
2808
+ ir_save(ctx, IR_SAVE_CFG|IR_SAVE_RULES|IR_SAVE_REGS, stderr);
2818
2809
}
2819
2810
}
2820
2811
@@ -3322,9 +3313,10 @@ static void zend_jit_setup(void)
3322
3313
#endif
3323
3314
zend_long debug = JIT_G(debug);
3324
3315
if (!(debug & ZEND_JIT_DEBUG_ASM_STUBS)) {
3325
- JIT_G(debug) &= ~(ZEND_JIT_DEBUG_IR_SRC|ZEND_JIT_DEBUG_IR_FINAL|ZEND_JIT_DEBUG_IR_CFG|ZEND_JIT_DEBUG_IR_REGS|
3316
+ JIT_G(debug) &= ~(ZEND_JIT_DEBUG_IR_SRC|ZEND_JIT_DEBUG_IR_FINAL|
3326
3317
ZEND_JIT_DEBUG_IR_CODEGEN|
3327
- ZEND_JIT_DEBUG_IR_AFTER_SCCP|ZEND_JIT_DEBUG_IR_AFTER_SCHEDULE|ZEND_JIT_DEBUG_IR_AFTER_REGS);
3318
+ ZEND_JIT_DEBUG_IR_AFTER_SCCP|ZEND_JIT_DEBUG_IR_AFTER_CFG|ZEND_JIT_DEBUG_IR_AFTER_GCM|
3319
+ ZEND_JIT_DEBUG_IR_AFTER_SCHEDULE|ZEND_JIT_DEBUG_IR_AFTER_REGS);
3328
3320
}
3329
3321
3330
3322
zend_jit_calc_trace_prologue_size();
0 commit comments