xref: /aosp_15_r20/external/perfmark/impl/build.gradle (revision 27e8546d0ef5f99cf83d5252272c7dd38d18d29a)
1*27e8546dSMatt Gilbrideplugins {
2*27e8546dSMatt Gilbride    id "me.champeau.jmh"
3*27e8546dSMatt Gilbride}
4*27e8546dSMatt Gilbride
5*27e8546dSMatt Gilbridedescription = "PerfMark Implementation API"
6*27e8546dSMatt Gilbrideext.moduleName =  "io.perfmark.impl"
7*27e8546dSMatt Gilbrideext.jdkVersion = JavaVersion.VERSION_1_6
8*27e8546dSMatt Gilbride
9*27e8546dSMatt Gilbridejava {
10*27e8546dSMatt Gilbride    toolchain {
11*27e8546dSMatt Gilbride        languageVersion = JavaLanguageVersion.of(11)
12*27e8546dSMatt Gilbride    }
13*27e8546dSMatt Gilbride}
14*27e8546dSMatt Gilbride
15*27e8546dSMatt GilbridecompileJava {
16*27e8546dSMatt Gilbride    sourceCompatibility = jdkVersion
17*27e8546dSMatt Gilbride    targetCompatibility = jdkVersion
18*27e8546dSMatt Gilbride
19*27e8546dSMatt Gilbride    options.compilerArgs.add("-Xlint:-options")
20*27e8546dSMatt Gilbride}
21*27e8546dSMatt Gilbride
22*27e8546dSMatt Gilbridedependencies {
23*27e8546dSMatt Gilbride    implementation project(':perfmark-api')
24*27e8546dSMatt Gilbride    compileOnly libs.jsr305,
25*27e8546dSMatt Gilbride            libs.errorprone
26*27e8546dSMatt Gilbride    testImplementation libs.truth
27*27e8546dSMatt Gilbride    testCompileOnly libs.errorprone
28*27e8546dSMatt Gilbride}
29*27e8546dSMatt Gilbride
30*27e8546dSMatt Gilbride
31*27e8546dSMatt Gilbridejmh {
32*27e8546dSMatt Gilbride
33*27e8546dSMatt Gilbride    timeOnIteration = "1s"
34*27e8546dSMatt Gilbride    warmup = "1s"
35*27e8546dSMatt Gilbride    fork = 400
36*27e8546dSMatt Gilbride    warmupIterations = 0
37*27e8546dSMatt Gilbride
38*27e8546dSMatt Gilbride    includes = ["ClassInit"]
39*27e8546dSMatt Gilbride    profilers = ["cl"]
40*27e8546dSMatt Gilbride    jvmArgs = ["-Dio.perfmark.PerfMark.debug=true"]
41*27e8546dSMatt Gilbride
42*27e8546dSMatt Gilbride    /*
43*27e8546dSMatt Gilbride    profilers = ["perfasm"]
44*27e8546dSMatt Gilbride
45*27e8546dSMatt Gilbride    jvmArgs = [
46*27e8546dSMatt Gilbride            "-XX:+UnlockDiagnosticVMOptions",
47*27e8546dSMatt Gilbride            "-XX:+LogCompilation",
48*27e8546dSMatt Gilbride            "-XX:LogFile=/tmp/blah.txt",
49*27e8546dSMatt Gilbride            "-XX:+PrintAssembly",
50*27e8546dSMatt Gilbride            "-XX:+PrintInterpreter",
51*27e8546dSMatt Gilbride            "-XX:+PrintNMethods",
52*27e8546dSMatt Gilbride            "-XX:+PrintNativeNMethods",
53*27e8546dSMatt Gilbride            "-XX:+PrintSignatureHandlers",
54*27e8546dSMatt Gilbride            "-XX:+PrintAdapterHandlers",
55*27e8546dSMatt Gilbride            "-XX:+PrintStubCode",
56*27e8546dSMatt Gilbride            "-XX:+PrintCompilation",
57*27e8546dSMatt Gilbride            "-XX:+PrintInlining",
58*27e8546dSMatt Gilbride            "-XX:+TraceClassLoading",
59*27e8546dSMatt Gilbride            "-XX:PrintAssemblyOptions=syntax",
60*27e8546dSMatt Gilbride            "-XX:PrintAssemblyOptions=intel"
61*27e8546dSMatt Gilbride    ]
62*27e8546dSMatt Gilbride     */
63*27e8546dSMatt Gilbride
64*27e8546dSMatt Gilbride    //duplicateClassesStrategy DuplicatesStrategy.INCLUDE
65*27e8546dSMatt Gilbride}