alloc_text
Nomeia a seção de código onde as definições de função especificadas devem residir. O pragma deve estar entre um declarador de função e a definição de função para as funções nomeadas.
#pragma alloc_text( "textsection", function1, ... )
Comentários
O pragma alloc_text não trata funções de membro C++ ou funções sobrecarregadas. É aplicável somente a funções declaradas com vinculação C – ou seja, funções declaradas com a especificação de vínculo extern "C". Se você tentar usar esse pragma em uma função com vinculação C++, um erro do compilador será gerado.
Como o tratamento de função usando __based não tem suporte, especificar locais de seção requer o uso do pragma alloc_text. O nome especificado por textsection deve ser colocado entre aspas duplas.
O pragma alloc_text deve aparecer depois que as declarações de qualquer uma das funções especificadas e antes das definições dessas funções.
As funções referenciadas em um pragma alloc_text devem ser definidas no mesmo módulo do pragma. Se isso não for feito e uma função indefinida for compilada posteriormente em uma seção de texto diferente, o erro poderá ou não ser detectado. Embora o programa seja executado corretamente no geral, a função não será alocada nas seções desejadas.
Outras limitações de alloc_text são:
Não pode ser usado dentro de uma função.
Deve ser usado depois que a função é declarada, mas antes de a função ser definida.