1 Generated: ./blort.class 2 reading blort.class... 3 method <init> ()V 4 block 0000: 0000..0004 5 0000: aload_0 // 00 6 0001: invokespecial method{java.lang.Object.<init>:()V} 7 next 0004 8 block 0004: 0004..0005 9 0004: return 10 returns 11 12 method test_deadend1 ()V 13 block 0000: 0000..0001 14 0000: return 15 returns 16 dead code 0001..0002 17 18 method test_deadend2 ()V 19 block 0000: 0000..0001 20 0000: ireturn 21 returns 22 dead code 0001..0003 23 24 method test_deadend3 ()V 25 block 0000: 0000..0002 26 0000: aconst_null 27 0001: athrow 28 returns 29 dead code 0002..0005 30 31 method test_dead_exception_handler ()V 32 block 0000: 0000..0001 33 0000: return 34 returns 35 dead code 0001..0007 36 37 method test_dead_goto ()V 38 block 0000: 0000..0003 39 0000: goto 0004 40 next 0004 41 dead code 0003..0004 42 block 0004: 0004..0005 43 0004: return 44 returns 45 46 method test_dead_ret ()V 47 block 0000: 0000..0003 48 0000: ifeq 0006 49 next 0003 50 next 0006 51 block 0003: 0003..0005 52 0003: ret 00 53 returns 54 dead code 0005..0006 55 block 0006: 0006..0007 56 0006: return 57 returns 58 59 method test_dead_tableswitch ()V 60 block 0000: 0000..0014 61 0000: tableswitch 62 default: 001b 63 next 001b 64 dead code 0014..001b 65 block 001b: 001b..001c 66 001b: return 67 returns 68 69 method test_dead_lookupswitch ()V 70 block 0000: 0000..001c 71 0000: lookupswitch 72 default: 001e 73 next 001e 74 dead code 001c..001e 75 block 001e: 001e..001f 76 001e: return 77 returns 78 79 method test_dead_ireturn ()V 80 block 0000: 0000..0003 81 0000: ifeq 0005 82 next 0003 83 next 0005 84 block 0003: 0003..0004 85 0003: ireturn 86 returns 87 dead code 0004..0005 88 block 0005: 0005..0006 89 0005: return 90 returns 91 92 method test_dead_lreturn ()V 93 block 0000: 0000..0003 94 0000: ifeq 0005 95 next 0003 96 next 0005 97 block 0003: 0003..0004 98 0003: lreturn 99 returns 100 dead code 0004..0005 101 block 0005: 0005..0006 102 0005: return 103 returns 104 105 method test_dead_freturn ()V 106 block 0000: 0000..0003 107 0000: ifeq 0005 108 next 0003 109 next 0005 110 block 0003: 0003..0004 111 0003: freturn 112 returns 113 dead code 0004..0005 114 block 0005: 0005..0006 115 0005: return 116 returns 117 118 method test_dead_dreturn ()V 119 block 0000: 0000..0003 120 0000: ifeq 0005 121 next 0003 122 next 0005 123 block 0003: 0003..0004 124 0003: dreturn 125 returns 126 dead code 0004..0005 127 block 0005: 0005..0006 128 0005: return 129 returns 130 131 method test_dead_areturn ()V 132 block 0000: 0000..0003 133 0000: ifeq 0005 134 next 0003 135 next 0005 136 block 0003: 0003..0004 137 0003: areturn 138 returns 139 dead code 0004..0005 140 block 0005: 0005..0006 141 0005: return 142 returns 143 144 method test_dead_return ()V 145 block 0000: 0000..0003 146 0000: ifeq 0005 147 next 0003 148 next 0005 149 block 0003: 0003..0004 150 0003: return 151 returns 152 dead code 0004..0005 153 block 0005: 0005..0006 154 0005: return 155 returns 156 157 method test_dead_athrow ()V 158 block 0000: 0000..0003 159 0000: ifeq 0005 160 next 0003 161 next 0005 162 block 0003: 0003..0004 163 0003: athrow 164 returns 165 dead code 0004..0005 166 block 0005: 0005..0006 167 0005: return 168 returns 169 170 method test_dead_wideret ()V 171 block 0000: 0000..0003 172 0000: ifeq 0008 173 next 0003 174 next 0008 175 block 0003: 0003..0007 176 0003: wide ret 0100 177 returns 178 dead code 0007..0008 179 block 0008: 0008..0009 180 0008: return 181 returns 182 183 method test_dead_goto_w ()V 184 block 0000: 0000..0005 185 0000: goto_w 00000006 186 next 0006 187 dead code 0005..0006 188 block 0006: 0006..0007 189 0006: return 190 returns 191