Como funciona a diretiva .NET IL .maxstack?

Eu gostaria de saber como o .maxstack realmente funciona. Eu sei que não tem a ver com o tamanho real dos tipos que você está declarando, mas com o número deles. Minhas perguntas são:

isso se aplica apenas para a função ou para todas as funções que estamos exigindo?mesmo que seja apenas para a função onde o .maxstack está sendo declarado, como você sabe o que é o maxstack se você tem ramificações? Você vai e vê todos os "caminhos" e retorna o valor máximo possível?O que acontece se eu configurá-lo para 16 e, na verdade, existem 17 variáveis?Existe uma penalidade muito grande se eu configurá-lo para 256?

questionAnswers(3)

yourAnswerToTheQuestion