To avoid deadlocks in backend code, please make sure that a lock that comes earlier in the list never gets acquired by a thread that already holds one of the locks that come later.
JvmBackendContext.inlineMethodGenerationLock. Used to prevent concurrent generation of inline functions.IrLock instance. Used in SymbolTable, lazyVar instances in IrLazyDeclaration, Fir2IrLazyDeclaration subclasses, Fir2IrDeclarationStorage.ClassBuilderAndSourceFileList.asBytes.methodNode in InlineCodegen.cloneMethodNode.InlineCache maps.