/ ORDEM (funções de colocar em ordem)
/ORDER:@filename
Parâmetros
- nome do arquivo
Um arquivo de texto especificando a ordem de vinculação para funções COMDAT.
Comentários
A opção de /ORDER informa o LINK para otimizar o seu programa, colocando a determinados COMDATs na imagem em uma ordem predeterminada.LINK coloca as funções na ordem especificada em cada seção da imagem.
Especificar a ordem em nome do arquivo, que é um arquivo de texto (arquivo de resposta) que lista os COMDATs na ordem em que você deseja vinculá-las.Cada linha no nome do arquivo contém o nome de um COMDAT.Um objeto contém COMDATs se ele foi compilado com a opção /Gy.Nomes de função diferenciam maiúsculas de minúsculas.
Usos LINK decorados formulários de identificadores.O compilador decora um identificador quando cria o arquivo. obj.Use o DUMPBIN ferramenta para obter o formulário decorado de um identificador quando você precisa especificá-lo para o vinculador.Para obter mais informações sobre nomes decorados, consulte Nomes decorados.
Se mais de uma especificação de /ORDER for usada, o último elemento especificado entrará em vigor.
Ordenação permite otimizar o comportamento de paginação do seu programa através do ajuste de troca por uma função com as funções que ele chama de agrupamento.Você pode também agrupar funções chamadas com freqüência.Essas técnicas aumentam a probabilidade de que uma função chamada está na memória quando ele é necessário e não terá que ser paginada a partir do disco.
O vinculador será prepend um sublinhado (_) para cada nome decorado em nome do arquivo , a menos que o nome começa com um ponto de interrogação (?) ou arroba (@).Por exemplo, se um arquivo de objeto contém extern "C" int func(int) e int main(void), DUMPBIN /SYMBOLS listará esses nomes decorados:
009 00000000 SECT3 notype () External | _func
00A 00000008 SECT3 notype () External | _main
No entanto, o nome especificado no arquivo de ordem deve ser func e main.
A opção /ORDER desativa o vínculo incremental.
Observação |
---|
LINK possível pedir funções estáticas, como nomes de função estática não são nomes de símbolos públicos.Quando /ORDER é especificado, vinculador LNK4037 de aviso é gerado para cada símbolo, no arquivo de ordem, o que é estáticas ou não encontrado. |
Para definir esta opção de vinculador no ambiente de desenvolvimento Visual Studio
Abra o projeto Páginas de propriedades caixa de diálogo.Para obter detalhes, consulte Definindo propriedades de projeto Visual C++.
Clique no vinculador pasta.
Clique no otimização página de propriedades.
Modificar o Ordem da função propriedade.
Para definir esta opção de vinculador programaticamente
- Consulte FunctionOrder.