У меня есть проект C, который ранее создавался с помощью цепочки инструментов Codesourcery gnu. Недавно он был преобразован для использования компилятора armcc от Realview, но производительность, которую мы получаем с инструментами Realview, очень низкая по сравнению с компиляцией с помощью инструментов gnu. Разве это не должно быть противоположным случаем, т.е. он должен давать лучшую производительность при компиляции с помощью инструментов Realview? Что мне здесь не хватает. Как я могу улучшить производительность с помощью инструментов Realview?
Также я заметил, что если я запускаю двоичный файл, созданный Realview Tools с Lauterbach, он падает, но если я запускаю его с помощью Realview ICE, он работает нормально.
ОБНОВЛЕНИЕ 1
Командная строка реального просмотра:
armcc -c --diag_style=ide --depend_format=unix_escaped --no_depend_system_headers --no_unaligned_access --c99 --arm_only --debug --gnu --cpu=ARM1136J-S --fpu=SoftVFP --apcs=/nointerwork - O3 -Отайм
Командная строка GNU GCC:
arm-none-eabi-gcc -mcpu=arm1136jf-s -mlittle-endian -msoft-float -O3 -Wall
Я использую Realview Tools версии 4.1 и GCC версии 4.4.1.
ОБНОВЛЕНИЕ 2
Проблема с Лаутербахом решена. Это было вызвано полухостингом, поскольку SWI полухостинга не обрабатывался в среде Лаутербаха. Перенацеливание на библиотеку C, чтобы избежать Semihosting, помогло, и теперь моя программа успешно работает с Lauterbach, а также с Realview ICE. Но вопрос производительности такой, какой он есть.