summaryrefslogtreecommitdiff
path: root/test/pending/pos/sealed-final.flags
blob: 63d024a0ba490908388df883c284dbbce74c9974 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
-Xfatal-warnings -Yinline-warnings -Ybackend:GenASM -optimise
/*
The new flag settings could be
  -Yopt-warnings -Yopt:l:project

The issue here is that things are being inlined, but a lot of
redundant load/store instructions are left behind:

2.11.7:

  public int f();
    Code:
       0: getstatic     #19                 // Field Foo$.MODULE$:LFoo$;
       3: invokevirtual #23                 // Method Foo$.mkFoo:()LFoo;
       6: pop
       7: bipush        10
       9: iconst_1
      10: iadd
      11: ireturn


2.12.0-M3:

  public int f();
    Code:
       0: getstatic     #19                 // Field Foo$.MODULE$:LFoo$;
       3: invokevirtual #23                 // Method Foo$.mkFoo:()LFoo;
       6: bipush        10
       8: istore_2
       9: dup
      10: ifnonnull     15
      13: aconst_null
      14: athrow
      15: astore_1
      16: iload_2
      17: iconst_1
      18: iadd
      19: istore_3
      20: iload_3
      21: ireturn
*/