-
Notifications
You must be signed in to change notification settings - Fork 292
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix var hoisting issue when no previous store #8122
Conversation
Hi! 👋 Thanks for your pull request! 🎉 To help us review it, please make sure to:
If you need help, please check our contributing guidelines. |
Debugger benchmarksParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 9 metrics, 6 unstable metrics. See unchanged results
Request duration reports for reportsgantt
title reports - request duration [CI 0.99] : candidate=None, baseline=None
dateFormat X
axisFormat %s
section baseline
noprobe (304.372 µs) : 275, 334
. : milestone, 304,
basic (304.574 µs) : 296, 313
. : milestone, 305,
loop (10.471 ms) : 10422, 10519
. : milestone, 10471,
section candidate
noprobe (309.124 µs) : 272, 346
. : milestone, 309,
basic (302.058 µs) : 291, 313
. : milestone, 302,
loop (10.362 ms) : 10322, 10403
. : milestone, 10362,
|
BenchmarksStartupParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 60 metrics, 3 unstable metrics. Startup time reports for petclinicgantt
title petclinic - global startup overhead: candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.055 s) : 0, 1055233
Total [baseline] (10.433 s) : 0, 10432705
Agent [candidate] (1.056 s) : 0, 1055880
Total [candidate] (10.495 s) : 0, 10494565
section appsec
Agent [baseline] (1.193 s) : 0, 1192626
Total [baseline] (10.782 s) : 0, 10782215
Agent [candidate] (1.188 s) : 0, 1188038
Total [candidate] (10.706 s) : 0, 10706233
section iast
Agent [baseline] (1.178 s) : 0, 1177980
Total [baseline] (11.018 s) : 0, 11018262
Agent [candidate] (1.196 s) : 0, 1196288
Total [candidate] (11.175 s) : 0, 11175433
section profiling
Agent [baseline] (1.274 s) : 0, 1274436
Total [baseline] (10.851 s) : 0, 10850531
Agent [candidate] (1.275 s) : 0, 1274831
Total [candidate] (10.837 s) : 0, 10837454
gantt
title petclinic - break down per module: candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (714.169 ms) : 0, 714169
BytebuddyAgent [candidate] (716.586 ms) : 0, 716586
GlobalTracer [baseline] (257.701 ms) : 0, 257701
GlobalTracer [candidate] (256.783 ms) : 0, 256783
AppSec [baseline] (55.523 ms) : 0, 55523
AppSec [candidate] (55.215 ms) : 0, 55215
Remote Config [baseline] (723.847 µs) : 0, 724
Remote Config [candidate] (722.145 µs) : 0, 722
Telemetry [baseline] (12.016 ms) : 0, 12016
Telemetry [candidate] (11.375 ms) : 0, 11375
section appsec
BytebuddyAgent [baseline] (732.426 ms) : 0, 732426
BytebuddyAgent [candidate] (729.661 ms) : 0, 729661
GlobalTracer [baseline] (254.752 ms) : 0, 254752
GlobalTracer [candidate] (253.81 ms) : 0, 253810
AppSec [baseline] (171.701 ms) : 0, 171701
AppSec [candidate] (170.613 ms) : 0, 170613
IAST [baseline] (19.761 ms) : 0, 19761
IAST [candidate] (20.306 ms) : 0, 20306
Remote Config [baseline] (672.131 µs) : 0, 672
Remote Config [candidate] (667.678 µs) : 0, 668
Telemetry [baseline] (8.095 ms) : 0, 8095
Telemetry [candidate] (8.054 ms) : 0, 8054
section iast
BytebuddyAgent [baseline] (828.023 ms) : 0, 828023
BytebuddyAgent [candidate] (841.569 ms) : 0, 841569
GlobalTracer [baseline] (246.837 ms) : 0, 246837
GlobalTracer [candidate] (249.912 ms) : 0, 249912
AppSec [baseline] (57.961 ms) : 0, 57961
AppSec [candidate] (58.285 ms) : 0, 58285
IAST [baseline] (21.099 ms) : 0, 21099
IAST [candidate] (21.792 ms) : 0, 21792
Remote Config [baseline] (646.928 µs) : 0, 647
Remote Config [candidate] (679.285 µs) : 0, 679
Telemetry [baseline] (8.461 ms) : 0, 8461
Telemetry [candidate] (8.748 ms) : 0, 8748
section profiling
BytebuddyAgent [baseline] (702.747 ms) : 0, 702747
BytebuddyAgent [candidate] (702.163 ms) : 0, 702163
GlobalTracer [baseline] (371.973 ms) : 0, 371973
GlobalTracer [candidate] (372.188 ms) : 0, 372188
AppSec [baseline] (53.629 ms) : 0, 53629
AppSec [candidate] (53.683 ms) : 0, 53683
Remote Config [baseline] (680.203 µs) : 0, 680
Remote Config [candidate] (679.378 µs) : 0, 679
Telemetry [baseline] (7.832 ms) : 0, 7832
Telemetry [candidate] (7.828 ms) : 0, 7828
ProfilingAgent [baseline] (95.575 ms) : 0, 95575
ProfilingAgent [candidate] (96.35 ms) : 0, 96350
Profiling [baseline] (95.598 ms) : 0, 95598
Profiling [candidate] (96.378 ms) : 0, 96378
Startup time reports for insecure-bankgantt
title insecure-bank - global startup overhead: candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section tracing
Agent [baseline] (1.051 s) : 0, 1050560
Total [baseline] (8.619 s) : 0, 8619058
Agent [candidate] (1.052 s) : 0, 1052010
Total [candidate] (8.626 s) : 0, 8625917
section iast
Agent [baseline] (1.181 s) : 0, 1180799
Total [baseline] (9.209 s) : 0, 9209425
Agent [candidate] (1.18 s) : 0, 1180161
Total [candidate] (9.22 s) : 0, 9219715
section iast_HARDCODED_SECRET_DISABLED
Agent [baseline] (1.18 s) : 0, 1180294
Total [baseline] (9.204 s) : 0, 9203668
Agent [candidate] (1.179 s) : 0, 1179236
Total [candidate] (9.187 s) : 0, 9187304
section iast_TELEMETRY_OFF
Agent [baseline] (1.175 s) : 0, 1174578
Total [baseline] (9.22 s) : 0, 9220474
Agent [candidate] (1.176 s) : 0, 1176404
Total [candidate] (9.196 s) : 0, 9195569
gantt
title insecure-bank - break down per module: candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section tracing
BytebuddyAgent [baseline] (712.033 ms) : 0, 712033
BytebuddyAgent [candidate] (711.105 ms) : 0, 711105
GlobalTracer [baseline] (256.971 ms) : 0, 256971
GlobalTracer [candidate] (257.144 ms) : 0, 257144
AppSec [baseline] (55.261 ms) : 0, 55261
AppSec [candidate] (55.092 ms) : 0, 55092
Remote Config [baseline] (717.041 µs) : 0, 717
Remote Config [candidate] (720.159 µs) : 0, 720
Telemetry [baseline] (10.552 ms) : 0, 10552
Telemetry [candidate] (12.872 ms) : 0, 12872
section iast
BytebuddyAgent [baseline] (829.893 ms) : 0, 829893
BytebuddyAgent [candidate] (829.122 ms) : 0, 829122
GlobalTracer [baseline] (247.516 ms) : 0, 247516
GlobalTracer [candidate] (247.369 ms) : 0, 247369
AppSec [baseline] (57.954 ms) : 0, 57954
AppSec [candidate] (57.852 ms) : 0, 57852
IAST [baseline] (21.326 ms) : 0, 21326
IAST [candidate] (21.538 ms) : 0, 21538
Remote Config [baseline] (653.389 µs) : 0, 653
Remote Config [candidate] (658.12 µs) : 0, 658
Telemetry [baseline] (8.476 ms) : 0, 8476
Telemetry [candidate] (8.582 ms) : 0, 8582
section iast_HARDCODED_SECRET_DISABLED
BytebuddyAgent [baseline] (829.13 ms) : 0, 829130
BytebuddyAgent [candidate] (828.51 ms) : 0, 828510
GlobalTracer [baseline] (247.23 ms) : 0, 247230
GlobalTracer [candidate] (247.059 ms) : 0, 247059
AppSec [baseline] (58.11 ms) : 0, 58110
AppSec [candidate] (58.011 ms) : 0, 58011
IAST [baseline] (21.542 ms) : 0, 21542
IAST [candidate] (21.365 ms) : 0, 21365
Remote Config [baseline] (675.459 µs) : 0, 675
Remote Config [candidate] (645.742 µs) : 0, 646
Telemetry [baseline] (8.527 ms) : 0, 8527
Telemetry [candidate] (8.493 ms) : 0, 8493
section iast_TELEMETRY_OFF
BytebuddyAgent [baseline] (824.876 ms) : 0, 824876
BytebuddyAgent [candidate] (826.835 ms) : 0, 826835
GlobalTracer [baseline] (246.992 ms) : 0, 246992
GlobalTracer [candidate] (246.983 ms) : 0, 246983
AppSec [baseline] (57.596 ms) : 0, 57596
AppSec [candidate] (57.706 ms) : 0, 57706
IAST [baseline] (21.095 ms) : 0, 21095
IAST [candidate] (20.807 ms) : 0, 20807
Remote Config [baseline] (660.61 µs) : 0, 661
Remote Config [candidate] (641.656 µs) : 0, 642
Telemetry [baseline] (8.351 ms) : 0, 8351
Telemetry [candidate] (8.317 ms) : 0, 8317
LoadParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 17 unstable metrics. Request duration reports for insecure-bankgantt
title insecure-bank - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section baseline
no_agent (379.209 µs) : 358, 400
. : milestone, 379,
iast (488.644 µs) : 467, 510
. : milestone, 489,
iast_FULL (647.484 µs) : 626, 669
. : milestone, 647,
iast_GLOBAL (519.533 µs) : 497, 542
. : milestone, 520,
iast_HARDCODED_SECRET_DISABLED (491.087 µs) : 469, 513
. : milestone, 491,
iast_INACTIVE (445.836 µs) : 425, 467
. : milestone, 446,
iast_TELEMETRY_OFF (481.179 µs) : 459, 503
. : milestone, 481,
tracing (445.431 µs) : 424, 467
. : milestone, 445,
section candidate
no_agent (369.408 µs) : 350, 389
. : milestone, 369,
iast (491.992 µs) : 470, 514
. : milestone, 492,
iast_FULL (651.186 µs) : 629, 673
. : milestone, 651,
iast_GLOBAL (508.643 µs) : 487, 530
. : milestone, 509,
iast_HARDCODED_SECRET_DISABLED (490.864 µs) : 469, 513
. : milestone, 491,
iast_INACTIVE (446.081 µs) : 425, 467
. : milestone, 446,
iast_TELEMETRY_OFF (475.797 µs) : 454, 497
. : milestone, 476,
tracing (442.587 µs) : 422, 463
. : milestone, 443,
Request duration reports for petclinicgantt
title petclinic - request duration [CI 0.99] : candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section baseline
no_agent (1.346 ms) : 1326, 1365
. : milestone, 1346,
appsec (1.753 ms) : 1729, 1777
. : milestone, 1753,
appsec_no_iast (1.748 ms) : 1724, 1773
. : milestone, 1748,
iast (1.489 ms) : 1466, 1512
. : milestone, 1489,
profiling (1.502 ms) : 1477, 1527
. : milestone, 1502,
tracing (1.483 ms) : 1459, 1507
. : milestone, 1483,
section candidate
no_agent (1.347 ms) : 1327, 1368
. : milestone, 1347,
appsec (1.741 ms) : 1717, 1764
. : milestone, 1741,
appsec_no_iast (1.739 ms) : 1715, 1764
. : milestone, 1739,
iast (1.506 ms) : 1484, 1529
. : milestone, 1506,
profiling (1.527 ms) : 1502, 1552
. : milestone, 1527,
tracing (1.489 ms) : 1462, 1516
. : milestone, 1489,
DacapoParameters
See matching parameters
SummaryFound 0 performance improvements and 0 performance regressions! Performance is the same for 11 metrics, 1 unstable metrics. Execution time for biojavagantt
title biojava - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section baseline
no_agent (14.875 s) : 14875000, 14875000
. : milestone, 14875000,
appsec (15.047 s) : 15047000, 15047000
. : milestone, 15047000,
iast (19.028 s) : 19028000, 19028000
. : milestone, 19028000,
iast_GLOBAL (17.841 s) : 17841000, 17841000
. : milestone, 17841000,
profiling (15.071 s) : 15071000, 15071000
. : milestone, 15071000,
tracing (15.254 s) : 15254000, 15254000
. : milestone, 15254000,
section candidate
no_agent (15.419 s) : 15419000, 15419000
. : milestone, 15419000,
appsec (14.761 s) : 14761000, 14761000
. : milestone, 14761000,
iast (18.525 s) : 18525000, 18525000
. : milestone, 18525000,
iast_GLOBAL (17.766 s) : 17766000, 17766000
. : milestone, 17766000,
profiling (14.801 s) : 14801000, 14801000
. : milestone, 14801000,
tracing (15.043 s) : 15043000, 15043000
. : milestone, 15043000,
Execution time for tomcatgantt
title tomcat - execution time [CI 0.99] : candidate=1.45.0-SNAPSHOT~a65e6c0cf5, baseline=1.45.0-SNAPSHOT~0dc9c087f0
dateFormat X
axisFormat %s
section baseline
no_agent (1.465 ms) : 1453, 1476
. : milestone, 1465,
appsec (2.342 ms) : 2301, 2384
. : milestone, 2342,
iast (2.078 ms) : 2025, 2131
. : milestone, 2078,
iast_GLOBAL (2.123 ms) : 2069, 2176
. : milestone, 2123,
profiling (2.445 ms) : 2254, 2637
. : milestone, 2445,
tracing (1.929 ms) : 1889, 1970
. : milestone, 1929,
section candidate
no_agent (1.464 ms) : 1453, 1476
. : milestone, 1464,
appsec (2.344 ms) : 2302, 2386
. : milestone, 2344,
iast (2.083 ms) : 2030, 2136
. : milestone, 2083,
iast_GLOBAL (2.123 ms) : 2070, 2176
. : milestone, 2123,
profiling (1.954 ms) : 1912, 1996
. : milestone, 1954,
tracing (1.93 ms) : 1889, 1971
. : milestone, 1930,
|
@@ -656,18 +657,26 @@ private void rewriteLocalVarInsn(LocalVariableNode localVar, int oldSlot, int ne | |||
private static void rewritePreviousStoreInsn( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
might need to update the comment above
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
done
&& (!(previous instanceof VarInsnNode) || ((VarInsnNode) previous).var != oldSlot)) { | ||
int processed = 0; | ||
// arbitrary fixing limit to 10 previous instructions to look at | ||
while (!isVarStoreForSlot(previous, oldSlot) && processed < 10) { | ||
previous = previous.getPrevious(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what happen if getPrevious return null?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ah right I missed one test in the while. it's working for isVarStoreForLost method
In some cases the range of a local var may not have previous init in the immediate neighborhood because of basic block arrangement. Limit the rewirite of previous instruction for store only and looking back only 10 instructions
8e854bf
to
a65e6c0
Compare
What Does This Do
In some cases the range of a local var may not have previous init in the immediate neighborhood because of basic block arrangement. Limit the rewirite of previous instruction for store only and looking
back only 10 instructions
Motivation
Additional Notes
Contributor Checklist
type:
and (comp:
orinst:
) labels in addition to any usefull labelsclose
,fix
or any linking keywords when referencing an issue.Use
solves
instead, and assign the PR milestone to the issueJira ticket: DEBUG-3273