In the course of #21843, it turns out that CommonAnnotationBeanPostProcessor uses an inverted loop where ClassUtils.getMostSpecificMethod is called at the outer level before actually finding an annotation, whereas AutowiredAnnotationBeanPostProcessor only calls ClassUtils.getMostSpecificMethod for actually annotated methods. Aligning CABPP with AABPP in that respect can avoid significant overhead on startup.