• Home
Name Date Size #Lines LOC

..--

000-nop/03-May-2024-134

001-HelloWorld/03-May-2024-6742

001-Main/03-May-2024-6440

002-sleep/03-May-2024-7157

003-omnibus-opcodes/03-May-2024-5,0574,203

004-InterfaceTest/03-May-2024-10070

004-JniTest/03-May-2024-1,7571,309

004-NativeAllocations/03-May-2024-173110

004-ReferenceMap/03-May-2024-31687

004-SignalTest/03-May-2024-283198

004-StackWalk/03-May-2024-280167

004-ThreadStress/03-May-2024-1,041719

004-UnsafeTest/03-May-2024-403309

004-checker-UnsafeTest18/03-May-2024-418248

005-annotations/03-May-2024-991614

006-args/03-May-2024-12870

007-count10/03-May-2024-8960

008-exceptions/03-May-2024-325210

009-instanceof/03-May-2024-296129

010-instance/03-May-2024-230167

011-array-copy/03-May-2024-314179

012-math/03-May-2024-215179

013-math2/03-May-2024-8856

014-math3/03-May-2024-11173

015-switch/03-May-2024-735639

016-intern/03-May-2024-10570

017-float/03-May-2024-8955

018-stack-overflow/03-May-2024-14096

019-wrong-array-type/03-May-2024-8453

020-string/03-May-2024-235183

021-string2/03-May-2024-1,4111,040

022-interface/03-May-2024-359153

023-many-interfaces/03-May-2024-517370

024-illegal-access/03-May-2024-259100

025-access-controller/03-May-2024-11261

026-access/03-May-2024-16979

027-arithmetic/03-May-2024-223162

028-array-write/03-May-2024-13893

029-assert/03-May-2024-8453

030-bad-finalizer/03-May-2024-197115

031-class-attributes/03-May-2024-690561

032-concrete-sub/03-May-2024-18667

033-class-init-deadlock/03-May-2024-12684

034-call-null/03-May-2024-10255

035-enum/03-May-2024-9058

036-finalizer/03-May-2024-258187

037-inherit/03-May-2024-9072

038-inner-null/03-May-2024-11767

039-join-main/03-May-2024-12384

040-miranda/03-May-2024-265118

041-narrowing/03-May-2024-187167

042-new-instance/03-May-2024-334193

043-privates/03-May-2024-11579

044-proxy/03-May-2024-1,9751,354

045-reflect-array/03-May-2024-331268

046-reflect/03-May-2024-1,113909

047-returns/03-May-2024-139100

048-reflect-v8/03-May-2024-1,010548

049-show-object/03-May-2024-10974

050-sync-test/03-May-2024-310216

051-thread/03-May-2024-341258

052-verifier-fun/03-May-2024-209143

053-wait-some/03-May-2024-164116

054-uncaught/03-May-2024-202123

055-enum-performance/03-May-2024-312251

056-const-string-jumbo/03-May-2024-6923

058-enum-order/03-May-2024-8152

059-finalizer-throw/03-May-2024-14582

061-out-of-memory/03-May-2024-180126

062-character-encodings/03-May-2024-7159

063-process-manager/03-May-2024-154126

064-field-access/03-May-2024-1,173785

065-mismatched-implements/03-May-2024-16137

066-mismatched-super/03-May-2024-18843

067-preemptive-unpark/03-May-2024-174121

068-classloader/03-May-2024-1,504643

069-field-type/03-May-2024-7439

070-nio-buffer/03-May-2024-228169

071-dexfile/03-May-2024-14973

071-dexfile-get-static-size/03-May-2024-8337

071-dexfile-map-clean/03-May-2024-221100

072-precise-gc/03-May-2024-160104

072-reachability-fence/03-May-2024-11483

073-mismatched-field/03-May-2024-9826

074-gc-thrash/03-May-2024-405272

075-verification-error/03-May-2024-459188

076-boolean-put/03-May-2024-9658

077-method-override/03-May-2024-302186

078-polymorphic-virtual/03-May-2024-18889

079-phantom/03-May-2024-318203

080-oom-fragmentation/03-May-2024-8053

080-oom-throw/03-May-2024-269194

080-oom-throw-with-finalizer/03-May-2024-12484

081-hot-exceptions/03-May-2024-9162

082-inline-execute/03-May-2024-2,2631,778

083-compiler-regressions/03-May-2024-10,0369,879

084-class-init/03-May-2024-355204

085-old-style-inner-class/03-May-2024-152100

086-null-super/03-May-2024-215118

087-gc-after-link/03-May-2024-233134

088-monitor-verification/03-May-2024-655434

089-many-methods/03-May-2024-7831

090-loop-formation/03-May-2024-13596

091-override-package-private-method/03-May-2024-14735

092-locale/03-May-2024-216159

093-serialization/03-May-2024-179131

094-pattern/03-May-2024-146108

095-switch-MAX_INT/03-May-2024-5748

096-array-copy-concurrent-gc/03-May-2024-13892

097-duplicate-method/03-May-2024-107

099-vmdebug/03-May-2024-585492

100-reflect2/03-May-2024-515404

1000-non-moving-space-stress/03-May-2024-10361

1001-app-image-regions/03-May-2024-15268

1002-notify-startup/03-May-2024-184105

1003-metadata-section-strings/03-May-2024-11249

1004-checker-volatile-ref-load/03-May-2024-16877

101-fibonacci/03-May-2024-10560

102-concurrent-gc/03-May-2024-11166

103-string-append/03-May-2024-7751

104-growth-limit/03-May-2024-11373

105-invoke/03-May-2024-150108

106-exceptions2/03-May-2024-284202

107-int-math2/03-May-2024-1,2611,041

108-check-cast/03-May-2024-10070

109-suspend-check/03-May-2024-266225

110-field-access/03-May-2024-163132

111-unresolvable-exception/03-May-2024-11031

112-double-math/03-May-2024-7750

113-multidex/03-May-2024-382171

114-ParallelGC/03-May-2024-195121

115-native-bridge/03-May-2024-1,083797

116-nodex2oat/03-May-2024-9951

118-noimage-dex2oat/03-May-2024-204115

120-hashcode/03-May-2024-8556

121-modifiers/03-May-2024-784555

121-simple-suspend-check/03-May-2024-8155

122-npe/03-May-2024-678562

123-compiler-regressions-mt/03-May-2024-169127

123-inline-execute2/03-May-2024-458425

124-missing-classes/03-May-2024-15671

125-gc-and-classloading/03-May-2024-3,1183,080

126-miranda-multidex/03-May-2024-364153

127-checker-secondarydex/03-May-2024-18359

128-reg-spill-on-implicit-nullcheck/03-May-2024-9061

129-ThreadGetId/03-May-2024-141100

130-hprof/03-May-2024-295204

132-daemon-locks-shutdown/03-May-2024-9764

133-static-invoke-super/03-May-2024-13196

1336-short-finalizer-timeout/03-May-2024-16994

1337-gc-coverage/03-May-2024-196117

1338-gc-no-los/03-May-2024-10156

1339-dead-reference-safe/03-May-2024-525309

134-reg-promotion/03-May-2024-11891

135-MirandaDispatch/03-May-2024-8756

136-daemon-jni-shutdown/03-May-2024-175108

137-cfi/03-May-2024-502336

138-duplicate-classes-check/03-May-2024-12844

138-duplicate-classes-check2/03-May-2024-19064

139-register-natives/03-May-2024-225130

140-dce-regression/03-May-2024-7952

140-field-packing/03-May-2024-17486

141-class-unload/03-May-2024-378247

142-classloader2/03-May-2024-18291

143-string-value/03-May-2024-10150

144-static-field-sigquit/03-May-2024-206115

145-alloc-tracking-stress/03-May-2024-12492

146-bad-interface/03-May-2024-17265

148-multithread-gc-annotations/03-May-2024-313146

149-suspend-all-stress/03-May-2024-179102

150-loadlibrary/03-May-2024-10773

151-OpenFileLimit/03-May-2024-156101

152-dead-large-object/03-May-2024-7045

153-reference-stress/03-May-2024-11989

154-gc-loop/03-May-2024-12173

155-java-set-resolved-type/03-May-2024-18065

156-register-dex-file-multi-loader/03-May-2024-13399

157-void-class/03-May-2024-12567

158-app-image-class-table/03-May-2024-14372

159-app-image-fields/03-May-2024-2,2922,172

160-read-barrier-stress/03-May-2024-5,6445,402

161-final-abstract-class/03-May-2024-279184

162-method-resolution/03-May-2024-1,724828

163-app-image-methods/03-May-2024-225118

164-resolution-trampoline-dex-cache/03-May-2024-18470

165-lock-owner-proxy/03-May-2024-181120

166-bad-interface-super/03-May-2024-17591

167-visit-locks/03-May-2024-252150

168-vmstack-annotated/03-May-2024-288208

169-threadgroup-jni/03-May-2024-15192

170-interface-init/03-May-2024-9766

171-init-aste/03-May-2024-6722

172-app-image-twice/03-May-2024-19579

173-missing-field-type/03-May-2024-190128

174-escaping-instance-of-bad-class/03-May-2024-264204

175-alloc-big-bignums/03-May-2024-9463

176-app-image-string/03-May-2024-9349

177-visibly-initialized-deadlock/03-May-2024-14187

178-app-image-native-method/03-May-2024-1,7171,431

179-nonvirtual-jni/03-May-2024-14396

180-native-default-method/03-May-2024-11968

181-default-methods/03-May-2024-763416

182-method-linking/03-May-2024-796290

1900-track-alloc/03-May-2024-430280

1901-get-bytecodes/03-May-2024-298167

1902-suspend/03-May-2024-234129

1903-suspend-self/03-May-2024-216117

1904-double-suspend/03-May-2024-226121

1905-suspend-native/03-May-2024-236113

1906-suspend-list-me-first/03-May-2024-206113

1907-suspend-list-self-twice/03-May-2024-200105

1908-suspend-native-resume-self/03-May-2024-265139

1909-per-agent-tls/03-May-2024-371228

1910-transform-with-default/03-May-2024-291183

1911-get-local-var-table/03-May-2024-659455

1912-get-set-local-primitive/03-May-2024-985773

1913-get-set-local-objects/03-May-2024-918701

1914-get-local-instance/03-May-2024-804567

1915-get-set-local-current-thread/03-May-2024-622419

1916-get-set-current-frame/03-May-2024-664466

1917-get-stack-frame/03-May-2024-579405

1919-vminit-thread-start-timing/03-May-2024-422251

1920-suspend-native-monitor/03-May-2024-282150

1921-suspend-native-recursive-monitor/03-May-2024-291157

1922-owned-monitors-info/03-May-2024-1,2981,137

1923-frame-pop/03-May-2024-830576

1924-frame-pop-toggle/03-May-2024-884603

1925-self-frame-pop/03-May-2024-780535

1926-missed-frame-pop/03-May-2024-900617

1927-exception-event/03-May-2024-1,083822

1928-exception-event-exception/03-May-2024-763563

1929-exception-catch-exception/03-May-2024-1,363973

1930-monitor-info/03-May-2024-717527

1931-monitor-events/03-May-2024-764562

1932-monitor-events-misc/03-May-2024-1,3161,045

1933-monitor-current-contended/03-May-2024-537385

1934-jvmti-signal-thread/03-May-2024-962728

1935-get-set-current-frame-jit/03-May-2024-684497

1936-thread-end-events/03-May-2024-392235

1937-transform-soft-fail/03-May-2024-297181

1938-transform-abstract-single-impl/03-May-2024-283186

1939-proxy-frames/03-May-2024-772539

1940-ddms-ext/03-May-2024-610459

1941-dispose-stress/03-May-2024-525348

1942-suspend-raw-monitor-exit/03-May-2024-283150

1943-suspend-raw-monitor-wait/03-May-2024-275140

1945-proxy-method-arguments/03-May-2024-340233

1946-list-descriptors/03-May-2024-337213

1947-breakpoint-redefine-deopt/03-May-2024-534368

1948-obsolete-const-method-handle/03-May-2024-558296

1949-short-dex-file/03-May-2024-372218

1950-unprepared-transform/03-May-2024-434270

1951-monitor-enter-no-suspend/03-May-2024-320173

1953-pop-frame/03-May-2024-1,8241,319

1954-pop-frame-jit/03-May-2024-1,7911,307

1955-pop-frame-jit-called/03-May-2024-1,7861,302

1956-pop-frame-jit-calling/03-May-2024-1,7861,302

1957-error-ext/03-May-2024-404258

1958-transform-try-jit/03-May-2024-312191

1959-redefine-object-instrument/03-May-2024-484343

1960-checker-bounds-codegen/03-May-2024-15785

1960-obsolete-jit-multithread-native/03-May-2024-552390

1961-checker-loop-vectorizer/03-May-2024-13486

1961-obsolete-jit-multithread/03-May-2024-506371

1962-multi-thread-events/03-May-2024-268170

1963-add-to-dex-classloader-in-memory/03-May-2024-661430

1964-add-to-dex-classloader-file/03-May-2024-807546

1965-get-set-local-primitive-no-tables/03-May-2024-1,238986

1966-get-set-local-objects-no-table/03-May-2024-1,182934

1967-get-set-local-bad-slot/03-May-2024-850638

1968-force-early-return/03-May-2024-1,6971,279

1969-force-early-return-void/03-May-2024-1,8271,357

1970-force-early-return-long/03-May-2024-1,7071,292

1971-multi-force-early-return/03-May-2024-700465

1972-jni-id-swap-indices/03-May-2024-211138

1973-jni-id-swap-pointer/03-May-2024-13891

1974-resize-array/03-May-2024-1,008775

1975-hello-structural-transformation/03-May-2024-734531

1976-hello-structural-static-methods/03-May-2024-626434

1977-hello-structural-obsolescence/03-May-2024-328202

1978-regular-obsolete-then-structural-obsolescence/03-May-2024-434274

1979-threaded-structural-transformation/03-May-2024-389265

1980-obsolete-object-cleared/03-May-2024-923789

1981-structural-redef-private-method-handles/03-May-2024-678493

1982-no-virtuals-structural-redefinition/03-May-2024-431301

1983-structural-redefinition-failures/03-May-2024-409280

1984-structural-redefine-field-trace/03-May-2024-435286

1985-structural-redefine-stack-scope/03-May-2024-345228

1986-structural-redefine-multi-thread-stack-scope/03-May-2024-307211

1987-structural-redefine-recursive-stack-scope/03-May-2024-281188

1988-multi-structural-redefine/03-May-2024-332207

1989-transform-bad-monitor/03-May-2024-308195

1990-structural-bad-verify/03-May-2024-330170

1991-hello-structural-retransform/03-May-2024-281169

1992-retransform-no-such-field/03-May-2024-291177

1993-fallback-non-structural/03-May-2024-292176

1994-final-virtual-structural/03-May-2024-295172

1995-final-virtual-structural-multithread/03-May-2024-376234

1996-final-override-virtual-structural/03-May-2024-302186

1997-structural-shadow-method/03-May-2024-290178

1998-structural-shadow-field/03-May-2024-269164

1999-virtual-structural/03-May-2024-291177

2000-virtual-list-structural/03-May-2024-293192

2001-virtual-structural-multithread/03-May-2024-416249

2002-virtual-structural-initializing/03-May-2024-346192

2003-double-virtual-structural/03-May-2024-336209

2004-double-virtual-structural-abstract/03-May-2024-319196

2005-pause-all-redefine-multithreaded/03-May-2024-572354

2006-virtual-structural-finalizing/03-May-2024-302177

2007-virtual-structural-finalizable/03-May-2024-307173

2008-redefine-then-old-reflect-field/03-May-2024-287179

2009-structural-local-ref/03-May-2024-427260

201-built-in-except-detail-messages/03-May-2024-521407

2011-stack-walk-concurrent-instrument/03-May-2024-216155

2012-structural-redefinition-failures-jni-id/03-May-2024-421283

2019-constantcalculationsinking/03-May-2024-273214

202-thread-oome/03-May-2024-7348

2020-InvokeVirtual-Inlining/03-May-2024-169111

2021-InvokeStatic-Inlining/03-May-2024-12993

2022-Invariantloops/03-May-2024-9365

2023-InvariantLoops_typecast/03-May-2024-12490

2024-InvariantNegativeLoop/03-May-2024-9566

2025-ChangedArrayValue/03-May-2024-9965

2026-DifferentMemoryLSCouples/03-May-2024-9568

2027-TwiceTheSameMemoryCouple/03-May-2024-8559

2028-MultiBackward/03-May-2024-9567

2029-contended-monitors/03-May-2024-301239

203-multi-checkpoint/03-May-2024-203137

2030-long-running-child/03-May-2024-11080

2031-zygote-compiled-frame-deopt/03-May-2024-489326

2032-default-method-private-override/03-May-2024-194128

2033-shutdown-mechanics/03-May-2024-192109

2034-spaces-in-SimpleName/03-May-2024-11262

2035-structural-native-method/03-May-2024-317162

2036-jni-filechannel/03-May-2024-11165

2036-structural-subclass-shadow/03-May-2024-329185

2037-thread-name-inherit/03-May-2024-259188

2038-hiddenapi-jvmti-ext/03-May-2024-288157

2039-load-transform-larger/03-May-2024-304169

2040-huge-native-alloc/03-May-2024-223153

2041-bad-cleaner/03-May-2024-177100

2042-checker-dce-always-throw/03-May-2024-287127

2230-profile-save-hotness/03-May-2024-166113

2231-checker-heap-poisoning/03-May-2024-21255

2232-write-metrics-to-log/03-May-2024-11849

2234-checker-remove-entry-suspendcheck/03-May-2024-11160

2235-JdkUnsafeTest/03-May-2024-619492

2236-JdkUnsafeGetLong-regression/03-May-2024-9666

2237-checker-inline-multidex/03-May-2024-12244

2238-checker-polymorphic-recursive-inlining/03-May-2024-23689

2239-varhandle-perf/03-May-2024-747494

300-package-override/03-May-2024-14768

301-abstract-protected/03-May-2024-8148

302-float-conversion/03-May-2024-11577

303-verification-stress/03-May-2024-14881

304-method-tracing/03-May-2024-11164

305-other-fault-handler/03-May-2024-178115

370-dex-v37/03-May-2024-5716

401-optimizing-compiler/03-May-2024-303227

402-optimizing-control-flow/03-May-2024-13391

403-optimizing-long/03-May-2024-161108

404-optimizing-allocator/03-May-2024-210171

405-optimizing-long-allocator/03-May-2024-216176

406-fields/03-May-2024-312232

407-arrays/03-May-2024-406300

408-move-bug/03-May-2024-11477

409-materialized-condition/03-May-2024-203140

410-floats/03-May-2024-184135

411-checker-hdiv-hrem-const/03-May-2024-1,9921,018

411-checker-hdiv-hrem-pow2/03-May-2024-1,499851

411-checker-instruct-simplifier-hrem/03-May-2024-890322

411-optimizing-arith/03-May-2024-1,4141,049

412-new-array/03-May-2024-896711

413-regalloc-regression/03-May-2024-8659

414-static-fields/03-May-2024-386266

416-optimizing-arith-not/03-May-2024-9866

418-const-string/03-May-2024-7547

419-long-parameter/03-May-2024-8054

420-const-class/03-May-2024-13899

421-exceptions/03-May-2024-130101

421-large-frame/03-May-2024-1,0871,053

422-instanceof/03-May-2024-11481

422-type-conversion/03-May-2024-736605

423-invoke-interface/03-May-2024-165136

424-checkcast/03-May-2024-11780

425-invoke-super/03-May-2024-157115

426-monitor/03-May-2024-10272

427-bitwise/03-May-2024-277210

427-bounds/03-May-2024-9662

429-ssa-builder/03-May-2024-9561

430-live-register-slow-path/03-May-2024-8451

431-type-propagation/03-May-2024-7551

432-optimizing-cmp/03-May-2024-303241

433-gvn/03-May-2024-8456

434-invoke-direct/03-May-2024-9954

434-shifter-operand/03-May-2024-7650

435-new-instance/03-May-2024-17488

435-try-finally-without-catch/03-May-2024-11480

436-rem-float/03-May-2024-308267

436-shift-constant/03-May-2024-8658

437-inline/03-May-2024-14798

438-volatile/03-May-2024-9766

439-npe/03-May-2024-1,072978

439-swap-double/03-May-2024-9663

440-stmp/03-May-2024-9566

441-checker-inliner/03-May-2024-315151

442-checker-constant-folding/03-May-2024-2,192951

443-not-bool-inline/03-May-2024-7850

444-checker-nce/03-May-2024-312184

445-checker-licm/03-May-2024-316159

446-checker-inliner2/03-May-2024-11965

447-checker-inliner3/03-May-2024-12476

448-multiple-returns/03-May-2024-7853

449-checker-bce/03-May-2024-1,975857

449-checker-bce-rem/03-May-2024-708301

450-checker-types/03-May-2024-827428

451-regression-add-float/03-May-2024-11783

451-spill-splot/03-May-2024-148113

452-multiple-returns2/03-May-2024-7349

453-not-byte/03-May-2024-5632

454-get-vreg/03-May-2024-230152

455-checker-gvn/03-May-2024-17989

456-baseline-array-set/03-May-2024-7952

457-regs/03-May-2024-321212

458-checker-instruct-simplification/03-May-2024-3,8311,421

458-long-to-fpu/03-May-2024-8658

459-dead-phi/03-May-2024-7248

460-multiple-returns3/03-May-2024-7349

461-get-reference-vreg/03-May-2024-210147

462-checker-inlining-dex-files/03-May-2024-270103

463-checker-boolean-simplifier/03-May-2024-615346

464-checker-inline-sharpen-calls/03-May-2024-11161

465-checker-clinit-gvn/03-May-2024-12572

466-get-live-vreg/03-May-2024-236162

467-regalloc-pair/03-May-2024-9973

468-checker-bool-simplif-regression/03-May-2024-9061

469-condition-materialization/03-May-2024-9356

470-huge-method/03-May-2024-2,0772,048

471-deopt-environment/03-May-2024-9355

471-uninitialized-locals/03-May-2024-6135

472-type-propagation/03-May-2024-8256

472-unreachable-if-regression/03-May-2024-8961

473-checker-inliner-constants/03-May-2024-12268

473-remove-dead-block/03-May-2024-9059

474-checker-boolean-input/03-May-2024-15484

474-fp-sub-neg/03-May-2024-142107

475-regression-inliner-ids/03-May-2024-10975

475-simplify-mul-zero/03-May-2024-7247

476-checker-ctor-fence-redun-elim/03-May-2024-892457

476-checker-ctor-memory-barrier/03-May-2024-324108

476-clinit-inline-static-invoke/03-May-2024-9662

477-checker-bound-type/03-May-2024-18484

477-long-2-float-convers-precision/03-May-2024-8450

478-checker-clinit-check-pruning/03-May-2024-752325

478-checker-inline-noreturn/03-May-2024-10967

478-checker-inliner-nested-loop/03-May-2024-10569

479-regression-implicit-null-check/03-May-2024-9554

480-checker-dead-blocks/03-May-2024-244114

481-regression-phi-cond/03-May-2024-9663

482-checker-loop-back-edge-use/03-May-2024-252109

483-dce-block/03-May-2024-10563

484-checker-register-hints/03-May-2024-287207

485-checker-dce-loop-update/03-May-2024-315247

485-checker-dce-switch/03-May-2024-239162

486-checker-must-do-null-check/03-May-2024-10063

487-checker-inline-calls/03-May-2024-10466

488-checker-inline-recursive-calls/03-May-2024-10873

489-current-method-regression/03-May-2024-8152

490-checker-inline/03-May-2024-9961

491-current-method/03-May-2024-11576

492-checker-inline-invoke-interface/03-May-2024-10563

493-checker-inline-invoke-interface/03-May-2024-10267

494-checker-instanceof-tests/03-May-2024-270159

495-checker-checkcast-tests/03-May-2024-278185

496-checker-inlining-class-loader/03-May-2024-214117

497-inlining-and-class-loader/03-May-2024-309217

498-type-propagation/03-May-2024-6239

499-bce-phi-array-length/03-May-2024-10973

500-instanceof/03-May-2024-7750

501-null-constant-dce/03-May-2024-7147

501-regression-packed-switch/03-May-2024-9565

503-dead-instructions/03-May-2024-10677

504-regression-baseline-entry/03-May-2024-6339

505-simplifier-type-propagation/03-May-2024-8456

506-verify-aput/03-May-2024-8962

507-boolean-test/03-May-2024-7247

507-referrer/03-May-2024-9753

508-checker-disassembly/03-May-2024-7645

508-referrer-method/03-May-2024-16463

509-pre-header/03-May-2024-7148

510-checker-try-catch/03-May-2024-2,5251,892

511-clinit-interface/03-May-2024-5430

513-array-deopt/03-May-2024-9962

514-shifts/03-May-2024-151111

515-dce-dominator/03-May-2024-6946

516-dead-move-result/03-May-2024-5734

517-checker-builder-fallthrough/03-May-2024-10465

518-null-array-get/03-May-2024-266210

519-bound-load-class/03-May-2024-8559

520-equivalent-phi/03-May-2024-6744

521-checker-array-set-null/03-May-2024-8956

521-regression-integer-field-set/03-May-2024-10467

522-checker-regression-monitor-exit/03-May-2024-12590

523-checker-can-throw-regression/03-May-2024-9061

524-boolean-simplifier-regression/03-May-2024-8354

525-checker-arrays-fields1/03-May-2024-760441

525-checker-arrays-fields2/03-May-2024-760441

526-checker-caller-callee-regs/03-May-2024-13660

526-long-regalloc/03-May-2024-11775

527-checker-array-access-simd/03-May-2024-47284

527-checker-array-access-split/03-May-2024-722130

528-long-hint/03-May-2024-9058

529-checker-unresolved/03-May-2024-362200

529-long-split/03-May-2024-230115

530-checker-instance-of-simplifier/03-May-2024-169158

530-checker-loops-try-catch/03-May-2024-1,607515

530-checker-loops1/03-May-2024-871505

530-checker-loops2/03-May-2024-1,306716

530-checker-loops3/03-May-2024-461209

530-checker-loops4/03-May-2024-420212

530-checker-loops5/03-May-2024-235119

530-checker-lse/03-May-2024-4,5261,807

530-checker-lse-ctor-fences/03-May-2024-240130

530-checker-lse-simd/03-May-2024-338146

530-checker-lse-try-catch/03-May-2024-360176

530-checker-lse3/03-May-2024-222177

530-checker-peel-unroll/03-May-2024-1,652490

530-checker-regression-reftyp-final/03-May-2024-12978

530-instanceof-checkcast/03-May-2024-292213

530-regression-lse/03-May-2024-10069

531-regression-debugphi/03-May-2024-144107

532-checker-nonnull-arrayset/03-May-2024-8849

533-regression-debugphi/03-May-2024-9664

534-checker-bce-deoptimization/03-May-2024-191122

535-deopt-and-inlining/03-May-2024-10066

535-regression-const-val/03-May-2024-6037

536-checker-intrinsic-optimization/03-May-2024-488222

536-checker-needs-access-check/03-May-2024-244107

537-checker-arraycopy/03-May-2024-14786

537-checker-debuggable/03-May-2024-6437

537-checker-inline-and-unverified/03-May-2024-10433

537-checker-jump-over-jump/03-May-2024-11856

538-checker-embed-constants/03-May-2024-800289

540-checker-rtp-bug/03-May-2024-15186

541-regression-inlined-deopt/03-May-2024-9459

542-bitfield-rotates/03-May-2024-467367

542-inline-trycatch/03-May-2024-221161

542-unresolved-access-check/03-May-2024-300187

543-checker-dce-trycatch/03-May-2024-398281

543-env-long-ref/03-May-2024-13082

545-tracing-and-jit/03-May-2024-296246

546-regression-simplify-catch/03-May-2024-12981

547-regression-trycatch-critic-edge/03-May-2024-8150

548-checker-inlining-and-dce/03-May-2024-13474

549-checker-types-merge/03-May-2024-17789

550-checker-multiply-accumulate/03-May-2024-606169

550-checker-regression-wide-store/03-May-2024-12384

550-new-instance-clinit/03-May-2024-7954

551-checker-clinit/03-May-2024-14081

551-checker-shifter-operand/03-May-2024-1,159370

551-implicit-null-checks/03-May-2024-11786

551-invoke-super/03-May-2024-10473

552-checker-primitive-typeprop/03-May-2024-529409

552-checker-sharpening/03-May-2024-25998

552-checker-x86-avx2-bit-manipulation/03-May-2024-272120

552-invoke-non-existent-super/03-May-2024-10171

553-invoke-super/03-May-2024-10256

554-checker-rtp-checkcast/03-May-2024-12074

555-UnsafeGetLong-regression/03-May-2024-9968

556-invoke-super/03-May-2024-9752

557-checker-instruct-simplifier-ror/03-May-2024-632148

557-checker-ref-equivalent/03-May-2024-10267

558-switch/03-May-2024-8055

559-bce-ssa/03-May-2024-7751

559-checker-irreducible-loop/03-May-2024-630549

559-checker-rtp-ifnotnull/03-May-2024-10157

560-packed-switch/03-May-2024-7650

561-divrem/03-May-2024-148104

561-shared-slowpaths/03-May-2024-200146

562-bce-preheader/03-May-2024-198122

562-checker-no-intermediate/03-May-2024-14950

563-checker-fakestring/03-May-2024-650499

563-checker-invoke-super/03-May-2024-8756

564-checker-bitcount/03-May-2024-255178

564-checker-inline-loop/03-May-2024-11158

564-checker-irreducible-loop/03-May-2024-9163

564-checker-negbitwise/03-May-2024-33878

565-checker-condition-liveness/03-May-2024-24171

565-checker-doublenegbitwise/03-May-2024-891700

565-checker-irreducible-loop/03-May-2024-143106

566-checker-codegen-select/03-May-2024-14484

566-polymorphic-inlining/03-May-2024-311202

567-checker-builder-intrinsics/03-May-2024-3,2401,614

568-checker-onebit/03-May-2024-152103

569-checker-pattern-replacement/03-May-2024-1,678526

570-checker-osr/03-May-2024-627425

570-checker-osr-locals/03-May-2024-185119

570-checker-select/03-May-2024-762264

571-irreducible-loop/03-May-2024-8052

572-checker-array-get-regression/03-May-2024-11058

573-checker-checkcast-regression/03-May-2024-9955

574-irreducible-and-constant-area/03-May-2024-9855

575-checker-string-init-alias/03-May-2024-149103

576-polymorphic-inlining/03-May-2024-147107

577-checker-fp2int/03-May-2024-173111

578-bce-visit/03-May-2024-10772

578-polymorphic-inlining/03-May-2024-10170

579-inline-infinite/03-May-2024-8355

580-checker-fp16/03-May-2024-569448

580-checker-round/03-May-2024-259199

580-checker-string-fact-intrinsics/03-May-2024-12364

580-crc32/03-May-2024-580471

581-checker-rtp/03-May-2024-9257

582-checker-bce-length/03-May-2024-14884

583-checker-zero/03-May-2024-7847

584-checker-div-bool/03-May-2024-8957

585-inline-unresolved/03-May-2024-7550

586-checker-null-array-get/03-May-2024-316231

587-inline-class-error/03-May-2024-13296

588-checker-irreducib-lifetime-hole/03-May-2024-158116

589-super-imt/03-May-2024-492458

590-checker-arr-set-null-regression/03-May-2024-12759

590-infinite-loop-with-nop/03-May-2024-5329

591-checker-regression-dead-loop/03-May-2024-8251

591-new-instance-string/03-May-2024-6339

592-checker-regression-bool-input/03-May-2024-11278

593-checker-boolean-2-integral-conv/03-May-2024-453290

593-checker-long-2-float-regression/03-May-2024-10063

593-checker-shift-and-simplifier/03-May-2024-13186

594-checker-array-alias/03-May-2024-304157

594-checker-irreducible-linorder/03-May-2024-150101

594-invoke-super/03-May-2024-12370

594-load-string-regression/03-May-2024-12470

595-error-class/03-May-2024-11482

595-profile-saving/03-May-2024-305199

596-app-images/03-May-2024-350222

596-checker-dead-phi/03-May-2024-10869

596-monitor-inflation/03-May-2024-170114

597-app-images-same-classloader/03-May-2024-11950

597-deopt-busy-loop/03-May-2024-365222

597-deopt-invoke-stub/03-May-2024-162108

597-deopt-new-string/03-May-2024-206128

598-checker-irreducible-dominance/03-May-2024-7846

599-checker-irreducible-loop/03-May-2024-8856

600-verifier-fails/03-May-2024-229184

601-method-access/03-May-2024-12458

602-deoptimizeable/03-May-2024-236177

603-checker-instanceof/03-May-2024-13072

604-hot-static-interface/03-May-2024-8656

605-new-string-from-bytes/03-May-2024-9059

606-erroneous-class/03-May-2024-10273

607-daemon-stress/03-May-2024-7751

608-checker-unresolved-lse/03-May-2024-12544

609-checker-inline-interface/03-May-2024-12669

609-checker-x86-bounds-check/03-May-2024-13750

610-arraycopy/03-May-2024-8961

611-checker-simplify-if/03-May-2024-336193

612-jit-dex-cache/03-May-2024-17066

613-inlining-dex-cache/03-May-2024-17566

614-checker-dump-constant-location/03-May-2024-9053

615-checker-arm64-store-zero/03-May-2024-519255

616-cha/03-May-2024-318208

616-cha-abstract/03-May-2024-224137

616-cha-interface/03-May-2024-238149

616-cha-interface-default/03-May-2024-261140

616-cha-miranda/03-May-2024-228139

616-cha-native/03-May-2024-8052

616-cha-proxy-method-inline/03-May-2024-11453

616-cha-regression-proxy-method/03-May-2024-177115

616-cha-unloading/03-May-2024-295144

617-clinit-oome/03-May-2024-13280

618-checker-induction/03-May-2024-997528

619-checker-current-method/03-May-2024-8150

620-checker-bce-intrinsics/03-May-2024-334189

622-checker-bce-regressions/03-May-2024-12280

622-simplifyifs-exception-edges/03-May-2024-12392

623-checker-loop-regressions/03-May-2024-1,327788

624-checker-stringops/03-May-2024-531292

625-checker-licm-regressions/03-May-2024-18498

626-checker-arm64-scratch-register/03-May-2024-1,8211,216

626-const-class-linking/03-May-2024-1,184758

626-set-resolved-string/03-May-2024-9757

627-checker-unroll/03-May-2024-16878

628-vdex/03-May-2024-9952

629-vdex-speed/03-May-2024-9248

630-safecast-array/03-May-2024-3832

631-checker-get-class/03-May-2024-16178

632-checker-char-at-bounds/03-May-2024-8855

633-checker-rtp-getclass/03-May-2024-140101

634-vdex-duplicate/03-May-2024-6310

635-checker-arm64-volatile-load-cc/03-May-2024-335266

636-arm64-veneer-pool/03-May-2024-4,2694,237

636-wrong-static-access/03-May-2024-14548

637-checker-throw-inline/03-May-2024-11165

638-checker-inline-cache-intrinsic/03-May-2024-20095

638-checker-inline-caches/03-May-2024-26490

638-no-line-number/03-May-2024-6625

639-checker-code-sinking/03-May-2024-757340

640-checker-boolean-simd/03-May-2024-17799

640-checker-integer-valueof/03-May-2024-14090

640-checker-simd/03-May-2024-1,963904

641-checker-arraycopy/03-May-2024-13180

641-irreducible-inline/03-May-2024-8557

641-iterations/03-May-2024-11981

642-fp-callees/03-May-2024-15599

643-checker-bogus-ic/03-May-2024-11758

645-checker-abs-simd/03-May-2024-557280

646-checker-arraycopy-large-cst-pos/03-May-2024-8953

646-checker-long-const-to-int/03-May-2024-10570

646-checker-simd-hadd/03-May-2024-2,701806

647-jni-get-field-id/03-May-2024-464290

647-sinking-catch/03-May-2024-8052

648-inline-caches-unresolved/03-May-2024-7822

648-many-direct-methods/03-May-2024-169101

649-vdex-duplicate-method/03-May-2024-21

650-checker-inline-access-thunks/03-May-2024-10756

652-deopt-intrinsic/03-May-2024-11866

654-checker-periodic/03-May-2024-222133

655-checker-simd-arm-opt/03-May-2024-224121

655-jit-clinit/03-May-2024-10570

656-annotation-lookup-generic-jni/03-May-2024-19365

656-checker-simd-opt/03-May-2024-483181

656-loop-deopt/03-May-2024-182115

657-branches/03-May-2024-9458

658-fp-read-barrier/03-May-2024-183139

659-unpadded-array/03-May-2024-9865

660-checker-sad/03-May-2024-842400

660-checker-simd-sad/03-May-2024-2,5971,015

660-clinit/03-May-2024-327235

660-store-8-16/03-May-2024-172131

661-checker-simd-reduc/03-May-2024-724266

661-classloader-allocator/03-May-2024-9849

661-oat-writer-layout/03-May-2024-595415

662-regression-alias/03-May-2024-12681

663-checker-select-generator/03-May-2024-151108

663-odd-dex-size/03-May-2024-4418

663-odd-dex-size2/03-May-2024-3612

663-odd-dex-size3/03-May-2024-4015

663-odd-dex-size4/03-May-2024-4015

664-aget-verifier/03-May-2024-14390

665-checker-simd-zero/03-May-2024-365157

666-dex-cache-itf/03-May-2024-162121

667-checker-simd-alignment/03-May-2024-386141

667-jit-jni-stub/03-May-2024-313187

667-out-of-bounds/03-May-2024-7852

668-aiobe/03-May-2024-7146

669-checker-break/03-May-2024-411155

670-bitstring-type-check/03-May-2024-240185

671-npe-field-opts/03-May-2024-13296

672-checker-throw-method/03-May-2024-375182

673-checker-throw-vmethod/03-May-2024-276132

674-HelloWorld-Dm/03-May-2024-9248

674-hiddenapi/03-May-2024-2,3631,606

674-hotness-compiled/03-May-2024-12073

674-vdex-uncompress/03-May-2024-8120

675-checker-unverified-method/03-May-2024-8758

676-proxy-jit-at-first-use/03-May-2024-10558

676-resolve-field-type/03-May-2024-13056

677-fsi/03-May-2024-9715

677-fsi2/03-May-2024-8543

678-quickening/03-May-2024-14485

679-locks/03-May-2024-11867

680-checker-deopt-dex-pc-0/03-May-2024-10870

682-double-catch-phi/03-May-2024-7953

683-clinit-inline-static-invoke/03-May-2024-5911

684-checker-simd-dotprod/03-May-2024-2,012738

684-select-condition/03-May-2024-12779

685-deoptimizeable/03-May-2024-299232

685-shifts/03-May-2024-158115

686-get-this/03-May-2024-9967

687-deopt/03-May-2024-10059

688-shared-library/03-May-2024-286166

689-multi-catch/03-May-2024-7752

689-zygote-jit-deopt/03-May-2024-10561

690-hiddenapi-same-name-methods/03-May-2024-367249

691-hiddenapi-proxy/03-May-2024-10848

692-vdex-inmem-loader/03-May-2024-483309

692-vdex-secondary-loader/03-May-2024-18585

693-vdex-inmem-loader-evict/03-May-2024-293201

694-clinit-jit/03-May-2024-13586

695-simplify-throws/03-May-2024-9163

696-loop/03-May-2024-8357

697-checker-string-append/03-May-2024-348265

698-selects/03-May-2024-8756

699-checker-string-append2/03-May-2024-209173

700-LoadArgRegs/03-May-2024-425381

701-easy-div-rem/03-May-2024-207144

702-LargeBranchOffset/03-May-2024-7837

703-floating-point-div/03-May-2024-142100

704-multiply-accumulate/03-May-2024-217166

705-register-conflict/03-May-2024-11990

706-checker-scheduler/03-May-2024-736182

707-checker-invalid-profile/03-May-2024-15070

708-jit-cache-churn/03-May-2024-415294

710-varhandle-creation/03-May-2024-2,5322,305

711-checker-type-conversion/03-May-2024-311202

712-varhandle-invocations/03-May-2024-8,2957,446

713-varhandle-invokers/03-May-2024-570420

714-invoke-custom-lambda-metafactory/03-May-2024-8526

715-clinit-implicit-parameter-annotations/03-May-2024-357276

716-jli-jit-samples/03-May-2024-216151

717-integer-value-of/03-May-2024-181122

718-zipfile-finalizer/03-May-2024-8552

719-varhandle-concurrency/03-May-2024-293180

720-thread-priority/03-May-2024-14188

721-osr/03-May-2024-9161

723-string-init-range/03-May-2024-9467

724-invoke-super-npe/03-May-2024-8861

725-imt-conflict-object/03-May-2024-276250

726-array-store/03-May-2024-10876

727-checker-unresolved-class/03-May-2024-1,601655

728-imt-conflict-zygote/03-May-2024-310261

729-checker-polymorphic-intrinsic/03-May-2024-10655

730-cha-deopt/03-May-2024-10469

730-checker-inlining-super/03-May-2024-9264

731-bounds-check-slow-path/03-May-2024-162126

800-smali/03-May-2024-3,0962,387

801-VoidCheckCast/03-May-2024-53

802-deoptimization/03-May-2024-211129

803-no-super/03-May-2024-4116

804-class-extends-itself/03-May-2024-10569

805-TooDeepClassInstanceOf/03-May-2024-12692

806-TooWideClassInstanceOf/03-May-2024-1,3271,288

807-method-handle-and-mr/03-May-2024-12171

808-checker-invoke-super/03-May-2024-7666

809-checker-invoke-super-bss/03-May-2024-134119

810-checker-invoke-super-default/03-May-2024-152135

811-checker-invoke-super-secondary/03-May-2024-12994

812-recursive-default/03-May-2024-8154

813-fp-args/03-May-2024-9161

814-large-field-offsets/03-May-2024-405333

815-invokeinterface-default/03-May-2024-236207

816-illegal-new-array/03-May-2024-12880

817-hiddenapi/03-May-2024-400171

818-clinit-nterp/03-May-2024-10056

819-verification-runtime/03-May-2024-6338

820-vdex-multidex/03-May-2024-6410

821-madvise-willneed/03-May-2024-8945

821-many-args/03-May-2024-148111

822-hiddenapi-future/03-May-2024-8729

823-cha-inlining/03-May-2024-15991

824-verification-rethrow/03-May-2024-6236

825-unbalanced-lock/03-May-2024-6240

826-infinite-loop/03-May-2024-7147

827-resolve-method/03-May-2024-12049

828-partial-lse/03-May-2024-9863

829-unresolved-enclosing/03-May-2024-10542

830-goto-zero/03-May-2024-7650

831-unresolved-field/03-May-2024-10561

831-unverified-bcp/03-May-2024-7645

832-cha-recursive/03-May-2024-10069

833-background-verification/03-May-2024-5,1195,033

834-lse/03-May-2024-8558

835-b216762268/03-May-2024-11988

836-32768classes/03-May-2024-53

900-hello-plugin/03-May-2024-198118

901-hello-ti-agent/03-May-2024-518355

902-hello-transformation/03-May-2024-284170

903-hello-tagging/03-May-2024-472305

904-object-allocation/03-May-2024-415273

905-object-free/03-May-2024-453296

906-iterate-heap/03-May-2024-982761

907-get-loaded-classes/03-May-2024-265146

908-gc-start-finish/03-May-2024-265155

909-attach-agent/03-May-2024-445299

910-methods/03-May-2024-539378

911-get-stack-trace/03-May-2024-2,4171,985

912-classes/03-May-2024-1,6831,267

913-heaps/03-May-2024-2,4141,965

914-hello-obsolescence/03-May-2024-295187

915-obsolete-2/03-May-2024-344223

916-obsolete-jit/03-May-2024-410265

917-fields-transformation/03-May-2024-309193

918-fields/03-May-2024-323213

919-obsolete-fields/03-May-2024-394253

920-objects/03-May-2024-257150

921-hello-failure/03-May-2024-1,613911

922-properties/03-May-2024-395280

923-monitors/03-May-2024-509357

924-threads/03-May-2024-926695

925-threadgroups/03-May-2024-397265

926-multi-obsolescence/03-May-2024-356242

927-timers/03-May-2024-238132

928-jni-table/03-May-2024-245130

929-search/03-May-2024-17270

930-hello-retransform/03-May-2024-280172

931-agent-thread/03-May-2024-298177

932-transform-saves/03-May-2024-332205

933-misc-events/03-May-2024-19396

934-load-transform/03-May-2024-274151

935-non-retransformable/03-May-2024-299168

936-search-onload/03-May-2024-21184

937-hello-retransform-package/03-May-2024-271163

938-load-transform-bcp/03-May-2024-292169

939-hello-transformation-bcp/03-May-2024-456305

940-recursive-obsolete/03-May-2024-327214

941-recursive-obsolete-jit/03-May-2024-382253

942-private-recursive/03-May-2024-336219

943-private-recursive-jit/03-May-2024-402269

944-transform-classloaders/03-May-2024-508314

945-obsolete-native/03-May-2024-349210

946-obsolete-throw/03-May-2024-312203

947-reflect-method/03-May-2024-287177

948-change-annotations/03-May-2024-597312

949-in-memory-transform/03-May-2024-328205

950-redefine-intrinsic/03-May-2024-779455

951-threaded-obsolete/03-May-2024-320203

952-invoke-custom/03-May-2024-3,1612,469

953-invoke-polymorphic-compiler/03-May-2024-426331

954-invoke-polymorphic-verifier/03-May-2024-720600

955-methodhandles-smali/03-May-2024-277217

956-methodhandles/03-May-2024-2,0571,601

957-methodhandle-transforms/03-May-2024-1,8151,373

958-methodhandle-stackframe/03-May-2024-236143

959-invoke-polymorphic-accessors/03-May-2024-1,077936

960-default-smali/03-May-2024-991442

961-default-iface-resolution-gen/03-May-2024-444325

962-iface-static/03-May-2024-9727

963-default-range-smali/03-May-2024-13881

964-default-iface-init-gen/03-May-2024-491368

965-default-verify/03-May-2024-15480

966-default-conflict/03-May-2024-17999

967-default-ame/03-May-2024-226104

968-default-partial-compile-gen/03-May-2024-799618

969-iface-super/03-May-2024-407180

970-iface-super-resolution-gen/03-May-2024-747578

971-iface-super/03-May-2024-885697

972-default-imt-collision/03-May-2024-1,3391,122

972-iface-super-multidex/03-May-2024-246197

973-default-multidex/03-May-2024-12995

974-verify-interface-super/03-May-2024-10286

975-iface-private/03-May-2024-150113

976-conflict-no-methods/03-May-2024-664526

978-virtual-interface/03-May-2024-275221

979-const-method-handle/03-May-2024-661438

980-redefine-object/03-May-2024-503312

981-dedup-original-dex/03-May-2024-389237

982-ok-no-retransform/03-May-2024-241143

983-source-transform-verify/03-May-2024-467260

984-obsolete-invoke/03-May-2024-405252

985-re-obsolete/03-May-2024-435293

986-native-method-bind/03-May-2024-322206

987-agent-bind/03-May-2024-18392

988-method-trace/03-May-2024-1,6461,344

989-method-trace-throw/03-May-2024-898710

990-field-trace/03-May-2024-439326

991-field-trace-2/03-May-2024-556416

992-source-data/03-May-2024-259149

993-breakpoints/03-May-2024-2,4902,223

994-breakpoint-line/03-May-2024-399277

995-breakpoints-throw/03-May-2024-464338

996-breakpoint-obsolete/03-May-2024-651437

997-single-step/03-May-2024-454306

998-redefine-use-after-free/03-May-2024-335184

999-redefine-hiddenapi/03-May-2024-354174

AbstractMethod/03-May-2024-3210

AllFields/03-May-2024-7624

DefaultMethods/03-May-2024-288

Dex2oatVdexPublicSdkDex/03-May-2024-152124

Dex2oatVdexTestDex/03-May-2024-8450

ErroneousA/03-May-2024-181

ErroneousB/03-May-2024-212

ErroneousInit/03-May-2024-247

ExceptionHandle/03-May-2024-4325

Extension1/03-May-2024-214

Extension2/03-May-2024-225

ForClassLoaderA/03-May-2024-3210

ForClassLoaderB/03-May-2024-3110

ForClassLoaderC/03-May-2024-3110

ForClassLoaderD/03-May-2024-288

GetMethodSignature/03-May-2024-3013

HiddenApi/03-May-2024-8818

HiddenApiSignatures/03-May-2024-13539

HiddenApiStubs/03-May-2024-4122

IMTA/03-May-2024-258

IMTB/03-May-2024-2912

ImageLayoutA/03-May-2024-224

ImageLayoutB/03-May-2024-268

Instrumentation/03-May-2024-3615

Interfaces/03-May-2024-4225

LinkageTest/03-May-2024-6758

Lookup/03-May-2024-543

Main/03-May-2024-214

ManyMethods/03-May-2024-10876

MethodTypes/03-May-2024-214

MultiDex/03-May-2024-5718

MultiDexModifiedSecondary/03-May-2024-6021

MyClass/03-May-2024-181

MyClassNatives/03-May-2024-338238

Nested/03-May-2024-236

NonStaticLeafMethods/03-May-2024-5639

Packages/03-May-2024-428

ProfileTestMultiDex/03-May-2024-501437

ProtoCompare/03-May-2024-236

ProtoCompare2/03-May-2024-236

StaticLeafMethods/03-May-2024-5437

Statics/03-May-2024-5638

StaticsFromCode/03-May-2024-246

StringLiterals/03-May-2024-4827

Transaction/03-May-2024-195108

VerifierDeps/03-May-2024-779665

VerifierDepsMulti/03-May-2024-2622

VerifySoftFailDuringClinit/03-May-2024-5144

XandY/03-May-2024-406

common/03-May-2024-709523

dexdump/03-May-2024-37,30336,499

dexpreopt/03-May-2024-284213

etc/03-May-2024-2,1081,564

generate-boot-image/03-May-2024-191146

jvmti-common/03-May-2024-1,187801

odsign/03-May-2024-1,8471,176

testrunner/03-May-2024-1,8991,463

ti-agent/03-May-2024-5,0843,986

ti-stress/03-May-2024-912807

update-rollback/03-May-2024-286164

utils/03-May-2024-1,5421,072

Android.bpD03-May-202461.6 KiB1,8741,732

Android.run-test.bpD03-May-2024110.5 KiB3,0332,729

Android.run-test.bp.pyD03-May-20242.5 KiB6239

Android.run-test.mkD03-May-20245.6 KiB13281

OWNERSD03-May-202482 43

README.arm_fvp.mdD03-May-20245 KiB166119

README.atest.mdD03-May-20245.9 KiB173133

README.chroot.mdD03-May-20246.2 KiB166157

README.mdD03-May-20247.2 KiB218165

art-gtests-target-chroot.xmlD03-May-20243.5 KiB5729

art-gtests-target-install-apex.xmlD03-May-20242.3 KiB4318

art-gtests-target-standalone-cts-template.xmlD03-May-20242.6 KiB4924

art-gtests-target-standalone-root-template.xmlD03-May-20242.3 KiB4520

art-gtests-target-standalone-template.xmlD03-May-20242.2 KiB4319

art-gtests-target-standalone-with-boot-image-template.xmlD03-May-20243.1 KiB5630

art-run-test-target-cts-template.xmlD03-May-20242.7 KiB5123

art-run-test-target-no-test-suite-tag-template.xmlD03-May-20242.1 KiB4216

art-run-test-target-slow-template.xmlD03-May-20242.4 KiB4619

art-run-test-target-template.xmlD03-May-20242.3 KiB4518

buildfailures.jsonD03-May-2024989 3231

csuite-app-compile-launch.xmlD03-May-20241.7 KiB3218

knownfailures.jsonD03-May-202455.9 KiB1,5021,501

run-testD03-May-202438.2 KiB1,073930

run-test-build.pyD03-May-20244.6 KiB11075

README.arm_fvp.md

1# Build and Run ART tests on ARM FVP
2
3This document describes how to build and run an Android system image targeting
4the ARM Fixed Virtual Platform and to use it as a target platform for running
5ART tests via ADB.
6
7This instruction was checked to be working for the AOSP master tree on
82021-01-13; the up-to-date instruction on how to build the kernel and firmware
9could be found here: device/generic/goldfish/fvpbase/README.md.
10
11## Configuring and Building AOSP
12
13First, an AOSP image should be configured and built, including the kernel and
14firmware.
15
16### Generating build system configs
17
18```
19cd $AOSP
20
21. build/envsetup.sh
22# fvp_mini target is used as we don't need a GUI for ART tests.
23lunch fvp_mini-eng
24
25# This is expected to fail; it generates all the build rules files.
26m
27```
28
29### Building the kernel
30
31```
32cd $SOME_DIRECTORY_OUTSIDE_AOSP
33
34mkdir android-kernel-mainline
35cd android-kernel-mainline
36repo init -u https://android.googlesource.com/kernel/manifest -b common-android-mainline
37repo sync
38BUILD_CONFIG=common/build.config.gki.aarch64 build/build.sh
39BUILD_CONFIG=common-modules/virtual-device/build.config.fvp build/build.sh
40```
41
42The resulting kernel image and DTB (Device Tree Binary) must then be copied into
43the product output directory:
44
45```
46cp out/android-mainline/dist/Image $ANDROID_PRODUCT_OUT/kernel
47cp out/android-mainline/dist/fvp-base-revc.dtb out/android-mainline/dist/initramfs.img $ANDROID_PRODUCT_OUT/
48```
49
50### Building the firmware (ARM Trusted Firmware and U-Boot)
51
52First, install ``dtc``, the device tree compiler. On Debian, this is in the
53``device-tree-compiler`` package.
54
55```
56sudo apt-get install device-tree-compiler
57```
58
59Then run:
60
61```
62mkdir platform
63cd platform
64repo init -u https://git.linaro.org/landing-teams/working/arm/manifest.git -m pinned-uboot.xml -b 20.01
65repo sync
66
67# The included copy of U-Boot is incompatible with this version of AOSP, switch to a recent upstream checkout.
68cd u-boot
69git fetch https://gitlab.denx.de/u-boot/u-boot.git/ master
70git checkout 18b9c98024ec89e00a57707f07ff6ada06089d26
71cd ..
72
73mkdir -p tools/gcc
74cd tools/gcc
75wget https://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/aarch64-linux-gnu/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.tar.xz
76tar -xJf gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.tar.xz
77cd ../..
78
79build-scripts/build-test-uboot.sh -p fvp all
80```
81
82These components must then be copied into the product output directory:
83
84```
85cp output/fvp/fvp-uboot/uboot/{bl1,fip}.bin $ANDROID_PRODUCT_OUT/
86```
87
88## Setting up the FVP model
89
90### Obtaining the model
91
92The public Arm FVP could be obtained from https://developer.arm.com/; one would
93need to create an account there and accept EULA to download and install it.
94A link for the latest version:
95
96https://developer.arm.com/tools-and-software/simulation-models/fixed-virtual-platforms/arm-ecosystem-models: "Armv8-A Base RevC AEM FVP"
97
98The AEMv8-A Base Platform FVP is a free of charge Fixed Virtual Platform of the
99latest Arm v8-A architecture features and has been validated with compatible
100Open Source software, which can be found on the reference open source software
101stacks page along with instructions for running the software
102
103### Running the model
104
105From a lunched environment:
106
107```
108export MODEL_PATH=/path/to/model/dir
109export MODEL_BIN=${MODEL_PATH}/models/Linux64_GCC-6.4/FVP_Base_RevC-2xAEMv8A
110./device/generic/goldfish/fvpbase/run_model
111```
112
113If any extra parameters are needed for the model (e.g. specifying plugins) they
114should be specified as cmdline options for 'run_model'. E.g. to run a model
115which support SVE:
116
117```
118export SVE_PLUGIN=${MODEL_PATH}/plugins/Linux64_GCC-6.4/ScalableVectorExtension.so
119$ ./device/generic/goldfish/fvpbase/run_model --plugin ${SVE_PLUGIN} -C SVE.ScalableVectorExtension.veclen=2
120```
121
122Note: SVE vector length is passed in units of 64-bit blocks. So "2" would stand
123for 128-bit vector length.
124
125The model will start and will have fully booted to shell in around 20 minutes
126(you will see "sys.boot_completed=1" in the log). It can be accessed as a
127regular device with adb:
128
129```
130adb connect localhost:5555
131```
132
133To terminate the model, press ``Ctrl-] Ctrl-D`` to terminate the telnet
134connection.
135
136## Running ART test on FVP
137
138The model behaves as a regular adb device so running ART tests could be done using
139the standard chroot method described in test/README.chroot.md; the steps are
140also described below. A separate AOSP tree (not the one used for the model
141itself), should be used - full or minimal.
142
143Then the regular ART testing routine could be performed; the regular "lunch"
144target ("armv8" and other targets, not "fvp-eng").
145
146
147```
148export ART_TEST_CHROOT=/data/local/art-test-chroot
149export OVERRIDE_TARGET_FLATTEN_APEX=true
150export SOONG_ALLOW_MISSING_DEPENDENCIES=true
151export TARGET_BUILD_UNBUNDLED=true
152export ART_TEST_RUN_ON_ARM_FVP=true
153
154. ./build/envsetup.sh
155lunch armv8-userdebug
156art/tools/buildbot-build.sh --target
157
158art/tools/buildbot-teardown-device.sh
159art/tools/buildbot-cleanup-device.sh
160art/tools/buildbot-setup-device.sh
161art/tools/buildbot-sync.sh
162
163art/test/testrunner/testrunner.py --target --64 --optimizing -j1
164
165```
166

README.atest.md

1# Running ART Tests with Atest / Trade Federation
2
3ART Testing has early support for execution in the [Trade
4Federation](https://source.android.com/devices/tech/test_infra/tradefed)
5("TradeFed") test harness, in particular via the
6[Atest](https://source.android.com/compatibility/tests/development/atest)
7command line tool.
8
9Atest conveniently takes care of building tests and their dependencies (using
10Soong, the Android build system) and executing them using Trade Federation.
11
12See also [README.md](README.md) for a general introduction to ART run-tests and
13gtests.
14
15## ART run-tests
16
17### Running ART run-tests on device
18
19ART run-tests are defined in sub-directories of `test/` starting with a number
20(e.g. `test/001-HelloWorld`). Each ART run-test is identified in the build
21system by a Soong module name following the `art-run-test-`*`<test-directory>`*
22format (e.g. `art-run-test-001-HelloWorld`).
23
24You can run a specific ART run-test on device by passing its Soong module name
25to Atest:
26```bash
27atest art-run-test-001-HelloWorld
28```
29
30To run all ART run-tests in a single command, the currently recommended way is
31to use [test mapping](#test-mapping) (see below).
32
33You can nonetheless run all supported ART run-tests with a single Atest command,
34using its support for wildcards:
35```bash
36atest art-run-test-\*
37```
38
39Note: Many ART run-tests are failing with the TradeFed harness as of March 2021,
40so the above Atest command will likely report many tests failures. The ART team
41is actively working on this issue.
42
43## ART gtests
44
45### Running ART gtests on device
46
47There are three ways to run ART gtests on device:
481. by building "standalone" ART gtests and running them against the active ART
49   APEX on the device;
502. by installing the Testing ART APEX (i.e. manually "updating" the ART APEX on
51   device); or
523. by setting up a `chroot` environment on the device, and "activating" the
53   Testing ART APEX in that environment.
54
55The first approach can be used to test the ART APEX presently residing on a
56device (either the original one, located in the "system" partition, or an
57updated package, present in the "data" partition).
58
59The second and third approaches make use of the Testing ART APEX
60(`com.android.art.testing.apex`), and were previously the only options to run
61ART gtests on device, because of build- and link-related limitations (the ART
62gtests had to be part of the ART APEX package itself to be able to build and run
63properly).
64
65### Running standalone ART gtests on device
66
67Standalone ART gtests are defined as Soong modules `art_standalone_*_tests`. You
68can run them individually with Atest, e.g:
69
70```bash
71atest art_standalone_cmdline_tests
72```
73
74You can also run all of them with a single Atest command, using its support for
75wildcards:
76
77```bash
78atest art_standalone_\*_tests
79```
80
81The previous commands build the corresponding ART gtests and their dependencies,
82dynamically link them against local ART APEX libraries (in the source tree), and
83run them on device against the active ART APEX.
84
85### Running ART gtests on device by installing the Testing ART APEX
86
87You can run ART gtests on device with the ART APEX installation strategy by
88using the following `atest` command:
89
90```bash
91atest ArtGtestsTargetInstallApex
92```
93
94This command:
951. builds the Testing ART APEX from the Android source tree (including the ART
96   gtests);
972. installs the Testing ART APEX using `adb install`;
983. reboots the device;
994. runs the tests; and
1005. uninstalls the module.
101
102You can run the tests of a single ART gtest C++ class using the
103`ArtGtestsTargetInstallApex:`*`<art-gtest-c++-class>`* syntax, e.g.:
104```bash
105atest ArtGtestsTargetInstallApex:JniInternalTest
106```
107
108This syntax also supports the use of wildcards, e.g.:
109```bash
110atest ArtGtestsTargetInstallApex:*Test*
111```
112
113You can also use Trade Federation options to run a subset of ART gtests, e.g.:
114```bash
115atest ArtGtestsTargetInstallApex -- \
116  --module ArtGtestsTargetInstallApex --test '*JniInternalTest*'
117```
118
119You can also pass option `--gtest_filter` to the gtest binary to achieve a
120similar effect:
121```bash
122atest ArtGtestsTargetInstallApex -- \
123  --test-arg com.android.tradefed.testtype.GTest:native-test-flag:"--gtest_filter=*JniInternalTest*"
124```
125
126### Running ART gtests on device using a `chroot` environment
127
128You can run ART gtests on device with the chroot-based strategy by using the
129following command:
130
131```bash
132atest ArtGtestsTargetChroot
133```
134
135This sequence:
1361. builds the Testing ART APEX from the Android source tree (including the ART
137   gtests) and all the necessary dependencies for the `chroot` environment;
1382. sets up a `chroot` environment on the device;
1393. "activates" the Testing ART APEX (and other APEXes that it depends on) in the
140   `chroot` environment;
1414. runs the tests within the `chroot` environment; and
1425. cleans up the environment (deactivates the APEXes and removes the `chroot`
143   environment).
144
145## Test Mapping
146
147ART Testing supports the execution of tests via [Test
148Mapping](https://source.android.com/compatibility/tests/development/test-mapping).
149The tests declared in ART's [TEST_MAPPING](../TEST_MAPPING) file are executed
150during pre-submit testing (when an ART changelist in Gerrit is verified by
151Treehugger) and/or post-submit testing (when a given change is merged in the
152Android code base), depending on the "test group" where a test is declared.
153
154### Running tests via Test Mapping with Atest
155
156It is possible to run tests via test mapping locally using Atest.
157
158To run all the tests declared in ART's `TEST_MAPPING` file, use the following
159command from the Android source tree top-level directory:
160```bash
161atest --test-mapping art:all
162```
163In the previous command, `art` is the (relative) path to the directory
164containing the `TEST_MAPPING` file listing the tests to run, while `all` means
165that tests declared in all [test
166groups](https://source.android.com/compatibility/tests/development/test-mapping#defining_test_groups)
167shall be run.
168
169To only run tests executed during pre-submit testing, use:
170```bash
171atest --test-mapping art:presubmit
172```
173

README.chroot.md

1# ART Chroot-Based On-Device Testing
2
3This file documents the use of a chroot environment in on-device testing of the
4Android Runtime (ART). Using a chroot allows tests to run a standalone ART from
5a locally built source tree on a device running (almost any) system image and
6does not interfere with the Runtime installed in the device's system partition.
7
8## Introduction
9
10The Android Runtime (ART) supports testing in a chroot-based environment, by
11setting up a chroot directory in a `ART_TEST_CHROOT` directory located under
12`/data/local` (e.g. `ART_TEST_CHROOT=/data/local/art-test-chroot`) on a device,
13installing ART and all other required artifacts there, and having tests use `adb
14shell chroot $ART_TEST_CHROOT <command>` to execute commands on the device
15within this environment.
16
17This way to run tests using a "standalone ART" ("guest system") only affects
18files in the data partition (the system partition and other partitions are left
19untouched) and is as independent as possible from the Android system ("host
20system") running on the device. This has some benefits:
21
22* no need to build and flash a whole device to do ART testing (or "overwriting"
23  an existing ART by syncing the system partition);
24* the possibility to use a smaller AOSP Android manifest
25  ([`master-art`](https://android.googlesource.com/platform/manifest/+/refs/heads/master-art/default.xml))
26  to build ART and the required dependencies for testing;
27* no instability due to updating/replacing ART on the system partition (a
28  functional Android Runtime is necessary to properly boot a device);
29* the possibility to have several standalone ART instances (one per directory,
30  e.g. `/data/local/art-test-chroot1`, `/data/local/art-test-chroot2`, etc.).
31
32Note that using this chroot-based approach requires root access to the device
33(i.e. be able to run `adb root` successfully).
34
35## Quick User Guide
36
370. Unset variables which are not used with the chroot-based approach (if they
38   were set previously):
39   ```bash
40   unset ART_TEST_ANDROID_ROOT
41   unset CUSTOM_TARGET_LINKER
42   unset ART_TEST_ANDROID_ART_ROOT
43   unset ART_TEST_ANDROID_RUNTIME_ROOT
44   unset ART_TEST_ANDROID_I18N_ROOT
45   unset ART_TEST_ANDROID_TZDATA_ROOT
46   ```
471. Set the chroot directory in `ART_TEST_CHROOT`:
48    ```bash
49    export ART_TEST_CHROOT=/data/local/art-test-chroot
50    ```
512. Set lunch target and ADB:
52    * With a minimal `aosp/master-art` tree:
53        ```bash
54        export SOONG_ALLOW_MISSING_DEPENDENCIES=true
55        . ./build/envsetup.sh
56        lunch armv8-eng  # or arm_krait-eng for 32-bit ARM
57        export PATH="$(pwd)/prebuilts/runtime:$PATH"
58        export ADB="$ANDROID_BUILD_TOP/prebuilts/runtime/adb"
59        ```
60    * With a full Android (AOSP) `aosp/master` tree:
61        ```bash
62        . ./build/envsetup.sh
63        lunch aosp_arm64-eng  # or aosp_arm-eng for 32-bit ARM
64        m adb
65        ```
663. Build ART and required dependencies:
67    ```bash
68    art/tools/buildbot-build.sh --target
69    ```
70    After building it is fine to see it finish with an error like:
71    ```
72    linkerconfig E [...] variableloader.cc:83] Unable to access VNDK APEX at path: <path>: No such file or directory
73    ```
744. Clean up the device:
75    ```bash
76    art/tools/buildbot-cleanup-device.sh
77    ```
785. Setup the device (including setting up mount points and files in the chroot
79   directory):
80    ```bash
81    art/tools/buildbot-setup-device.sh
82    ```
836. Populate the chroot tree on the device (including "activating" APEX packages
84   in the chroot environment):
85    ```bash
86    art/tools/buildbot-sync.sh
87    ```
887. Run ART gtests:
89    ```bash
90    art/tools/run-gtests.sh -j4
91    ```
92    * Specific tests to run can be passed on the command line, specified by
93      their absolute paths beginning with `/apex/`:
94        ```bash
95        art/tools/run-gtests.sh \
96          /apex/com.android.art/bin/art/arm64/art_cmdline_tests \
97          /apex/com.android.art/bin/art/arm64/art_dexdump_tests
98        ```
99    * Gtest options can be passed to each gtest by passing them after `--`; see
100      the following examples.
101        * To print the list of all test cases of a given gtest, use option
102          `--gtest_list_tests`:
103            ```bash
104            art/tools/run-gtests.sh \
105              /apex/com.android.art/bin/art/arm64/art_cmdline_tests \
106              -- --gtest_list_tests
107            ```
108        * To filter the test cases to execute, use option `--gtest_filter`:
109            ```bash
110            art/tools/run-gtests.sh \
111              /apex/com.android.art/bin/art/arm64/art_cmdline_tests \
112              -- --gtest_filter="*TestJdwp*"
113            ```
114        * To see all the options supported by a gtest, use option `--help`:
115            ```bash
116            art/tools/run-gtests.sh \
117              /apex/com.android.art/bin/art/arm64/art_cmdline_tests \
118              -- --help
119            ```
120    * Note: Some test cases of `art_runtime_tests` defined in
121    `art/runtime/gc/space/image_space_test.cc` may fail when using the full AOSP
122    tree (b/119815008).
123        * Workaround: Run `m clean-oat-host` before the build step
124        (`art/tools/buildbot-build.sh --target`) above.
125    * Note: The `-j` option of script `art/tools/run-gtests.sh` is not honored
126      yet (b/129930445). However, gtests themselves support parallel execution,
127      which can be specified via the gtest option `-j`:
128        ```bash
129        art/tools/run-gtests.sh -- -j4
130        ```
1318. Run ART run-tests:
132    * On a 64-bit target:
133        ```bash
134        art/test/testrunner/testrunner.py --target --64
135        ```
136    * On a 32-bit target:
137        ```bash
138        art/test/testrunner/testrunner.py --target --32
139        ```
1409. Run Libcore tests:
141    * On a 64-bit target:
142        ```bash
143        art/tools/run-libcore-tests.sh --mode=device --variant=X64
144        ```
145    * On a 32-bit target:
146        ```bash
147        art/tools/run-libcore-tests.sh --mode=device --variant=X32
148        ```
14910. Run JDWP tests:
150    * On a 64-bit target:
151        ```bash
152        art/tools/run-libjdwp-tests.sh --mode=device --variant=X64
153        ```
154    * On a 32-bit target:
155        ```bash
156        art/tools/run-libjdwp-tests.sh --mode=device --variant=X32
157        ```
15811. Tear down device setup:
159    ```bash
160    art/tools/buildbot-teardown-device.sh
161    ```
16212. Clean up the device:
163    ```bash
164    art/tools/buildbot-cleanup-device.sh
165    ```
166

README.md

1# ART Testing
2
3There are two suites of tests in the Android Runtime (ART):
4* _ART run-tests_: Tests of the ART runtime using Dex bytecode (mostly written
5  in Java).
6* _ART gtests_: C++ tests exercising various aspects of ART.
7
8## ART run-tests
9
10ART run-tests are tests exercising the runtime using Dex bytecode. They are
11written in Java and/or [Smali](https://github.com/JesusFreke/smali)
12(compiled/assembled as Dex bytecode) and sometimes native code (written as C/C++
13testing libraries). Some tests also make use of the
14[Jasmin](http://jasmin.sourceforge.net/) assembler or the
15[ASM](https://asm.ow2.io/) bytecode manipulation tool. Run-tests are
16executed on the ART runtime (`dalvikvm`), possibly preceded by a
17pre-optimization of the Dex code (using `dex2oat`).
18
19The run-tests are identified by directories in this `test` directory, named with
20a numeric prefix and containing an `info.txt` file. For most run tests, the
21sources are in the `src` subdirectory. Sources found in the `src2` directory are
22compiled separately but to the same output directory; this can be used to
23exercise "API mismatch" situations by replacing class files created in the first
24pass. The `src-ex` directory is built separately, and is intended for exercising
25class loaders.  Resources can be stored in the `res` directory, which is
26distributed together with the executable files.
27
28The run-tests logic lives in the `test/run-test` Bash script. The execution of a
29run-test has three main parts: building the test, running the test, and checking
30the test's output. By default, these three steps are implemented by three Bash
31scripts located in the `test/etc` directory (`default-build`, `default-run`, and
32`default-check`). These scripts rely on environment variables set by
33`test/run-test`.
34
35The default logic for all of these these steps (build, run, check) is overridden
36if the test's directory contains a Bash script named after the step
37(i.e. `build`, `run`, or `check`). Note that the default logic of the "run" step
38is actually implemented in the "JAR runner" (`test/etc/run-test-jar`), invoked
39by `test/etc/default-run`.
40
41After the execution of a run-test, the check step's default behavior
42(implemented in `test/etc/default-check`) is to respectively compare its
43standard output and standard error with the contents of the
44`expected-stdout.txt` and `expected-stderr.txt` files contained in the test's
45directory; any mismatch triggers a test failure.
46
47The `test/run-test` script handles the execution of a single run-test in a given
48configuration. The Python script `test/testrunner/testrunner.py` is a convenient
49script handling the construction and execution of multiple tests in one
50configuration or more.
51
52To see the invocation options supported by `run-test` and `testrunner.py`, run
53these commands from the Android source top-level directory:
54```sh
55art/test/run-test --help
56```
57```sh
58art/test/testrunner/testrunner.py --help
59```
60
61### Checker tests
62
63Some ART run-tests, known as "Checker tests", perform additional checks on ART's
64compiler. They are identified by their name, which match the
65`^[0-9]+-checker-.*` regular expression (e.g. `004-checker-UnsafeTest18`).
66
67Checker assertions are annotations in a run-test's (Java and Smali) source files
68verifying the behavior of the ART compiler when compiling the corresponding Dex
69code. They are checked by the `checker` tool (see [directory
70`art/tools/checker`](https://cs.android.com/android/platform/superproject/+/master:art/tools/checker/))
71against a c1visualizer-style (`.cfg`) file emitted by `dex2oat`, containing
72control-flow graphs (CFGs) for compiled methods at each step (pass) in the
73compiler's pipeline, as well as the emitted assembly code.
74
75## ART gtests
76
77ART gtests are written in C++ using the [Google
78Test](https://github.com/google/googletest) framework. These tests exercise
79various aspects of the runtime (the logic in `libart`, `libart-compiler`, etc.)
80and its binaries (`dalvikvm`, `dex2oat`, `oatdump`, etc.). Some of them are used
81as unit tests to verify a particular construct in ART. These tests may depend on
82some test Dex files and core images.
83
84ART gtests are defined in various directories within the ART project (usually in
85the same directory as the code they exercise). Their source files usually end
86with the suffix `_test.cc`. The construction logic of these tests is implemented
87in ART's build system (`Android.bp` and `Android*.mk` files). On host, these
88gtests can be run by executing `m test-art-host-gtest`. On device, the
89recommended approach is to run these tests in a chroot environment (see
90`README.chroot.md` in this directory).
91
92
93# Test execution
94
95All tests in either suite can be run using the `art/test.py`
96script. Additionally, run-tests can be run individually. All of the tests can be
97run on the build host, on a USB-attached device, or using the build host
98"reference implementation".
99
100ART also supports running target (device) tests in a chroot environment (see
101`README.chroot.md` in this directory). This is currently the recommended way to
102run tests on target (rather than using `art/test.py --target`).
103
104To see command flags run:
105
106```sh
107$ art/test.py -h
108```
109
110## Building tests
111
112In general all tests require some dependencies to be built before they can be run.
113In general you can pass the `--build-dependencies` flag (also available as short
114option -b) to `art/test.py` program to automatically build required dependencies.
115One can also directly use the various `test-art-...-dependencies` targets listed
116below.
117
118## Running all tests on the build host
119
120```sh
121$ # Build test files
122$ m test-art-host-run-test-dependencies
123$ # Run the tests
124$ art/test.py --host
125```
126
127Or:
128
129```
130$ art/test.py -b --host
131```
132
133## Running all tests on the target device
134
135```sh
136$ # Build test files
137$ m test-art-target-run-test-dependencies
138$ # Run the tests
139$ art/test.py --target
140```
141
142Or:
143
144```
145$ art/test.py -b --target
146```
147
148## Running all gtests on the build host
149
150```sh
151$ art/test.py --host -g
152```
153
154## Running all gtests on the target device
155
156```sh
157$ art/test.py --target -g
158```
159
160## Running all run-tests on the build host
161
162```sh
163$ # Build test files
164$ m test-art-host-run-test-dependencies
165$ art/test.py --host -r
166```
167
168Or:
169
170```
171$ art/test.py -b --host -r
172```
173
174## Running all run-tests on the target device
175
176```sh
177$ art/test.py --target -r
178```
179
180## Running one run-test on the build host
181
182```sh
183$ # Build test files
184$ m test-art-host-run-test-dependencies
185$ # Run the tests
186$ art/test.py --host -r -t 001-HelloWorld
187```
188
189Or:
190
191```
192$ art/test.py -b --host -r -t 001-HelloWorld
193```
194
195## Running one run-test on the target device
196
197```sh
198$ art/test.py --target -r -t 001-HelloWorld
199```
200
201## Running one gtest on the build host
202
203```sh
204$ find out/host/ -type f -name art_runtime_tests  # Find the path of the test.
205$ out/host/linux-x86/nativetest/art_runtime_tests/art_runtime_tests
206```
207
208Add "--no_isolate" to run the tests one by one in single process (disable forking).
209Add "--gtest_filter=..." to select specific sub-test(s) to run.
210Prefix by "gdb --args " to run the test in gdb.
211
212# ART Continuous Integration
213
214Both ART run-tests and gtests are run continuously as part of [ART's continuous
215integration](https://ci.chromium.org/p/art/g/luci/console). In addition, two
216other test suites are run continuously on this service: Libcore tests and JDWP
217tests.
218