ID do artigo: 000074187 Tipo de conteúdo: Solução de problemas Última revisão: 22/09/2011

Desalinhamento de otimização memcpy()

Ambiente

    Intel® Quartus® II Subscription Edition
BUILT IN - ARTICLE INTRO SECOND COMPONENT

Problema crítico

Descrição

Quando a otimização é ativada (-O1 ou superior), se você usar memcpy() e o ponteiro de origem estiver alinhado para um limite de 32 bits, o compilador implementa com palavras orientadas memcpy() para instruções como parte do processo de otimização. Esta técnica de otimização causa resultados inesperados em seu software, se memcpy() for usado em um endereço desalinhado.

Resolução

Tome medidas para garantir que uma implementação otimizada seja memcpy() chamados apenas com ponteiros de dados alinhados.

Produtos relacionados

Este artigo aplica-se a 1 produtos

Dispositivos programáveis Intel®

1

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.