I was wondering if there's an obvious and quick way of when analyzing a constructor's bytecode, to determine where the `super()` code ends in. 

More concretely, and in sharp contrast to Java, where a call in the constructor to any `super()` constructor method is optional (or rather, when not present -- implicit), in the bytecode world it is always needed. 

For black magic purposes I'm in need of knowing just by bytecode analysis and by the simplest method available, what's the `INVOKESPECIAL` call that corresponds to the Java world's `super()` call.

I'll leave you here with a hard example:

```
public static class A {
    public A(Object o, Object b) {
    }
}

public static class B extends A {
    public B() {
        //the below super is in bold just to signal that's the one
        //I'm looking for
        SUPER(new A(new Object(), new Integer(2)), new Integer(1));
        System.out.println(new A(new Object(), new Integer(2)));
    }
}

```

with the corresponding bytecode:
![enter image description here](https://i.stack.imgur.com/6iufU.png)