Создайте программу, которая использует 2 разных ISA - PullRequest
0 голосов
/ 20 октября 2010

Привет новичок здесь (будьте осторожны),

Я пытаюсь написать программу, в которой есть код с плавающей запятой.Однако эта программа должна работать на 2 разных процессорах.Которые имеют примерно одинаковые ISA за исключением их модели с плавающей запятой.Они используют совершенно разные инструкции и регистры для выполнения вычислений с плавающей запятой.Каким будет элегантный способ заставить gcc скомпилировать один раздел кода для модели одного процессора и другой раздел для модели другого процессора?У меня уже есть метод определения того, на каком процессоре в данный момент выполняется код, поэтому я могу связать его с соответствующим кодом в памяти.

Все сделано только на языке Си.Для любопытных я использую ядра powerpc e500v2 и e300.

Это не домашний вопрос, ни учителя не будут расстроены из-за этого в Интернете.

1 Ответ

2 голосов
/ 20 октября 2010

Создайте два разных .o файла, используя разные опции GCC.

Я предполагаю, что вы говорите о коде, достаточно совместимом для совместного использования файла ELF, например, x87 против SSE2 с плавающей точкой, а не x86 и x86_64 или нечетных вещах, таких как ClearSpeed.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...