Re[2]: сборка компиляторами от Sun 5.9
Alexey Rymonin
x-phoenix at mail.ru
Wed Jun 20 23:11:21 MSD 2007
Hello Andrei,
Tuesday, June 19, 2007, 11:33:59 PM, you wrote:
AN> On Tuesday 19 June 2007 22:51, Alexey Rymonin wrote:
>> Hello Alexey,
>>
>> Хочу еще уточнить, может кто поможет в отсутствие Игоря...
>> в корку падает на вызове ngx_cpu_pause() которая
>>
>> #define ngx_cpu_pause() __asm ("pause")
>>
>> Если сбрить __asm ("pause") то все собиратеся нормально.... кто
>> может поскажет что это такое,
AN> Это инструкция для x86/x86_64, специально для spin locks.
Она из набора SSE2... появилась вроде как в 10 студии...
>> почему оно может в кору ронять сборку
AN> Очевидно - проблема в Sun C Compiler. Попробуйте заменить на
AN> __asm (".byte 0xf3, 0x90")
Не помогло... :-(
>> и чем мне грозит сбриение этого?
AN> В самом плохом случае - незначительным увеличением CPU usage на большой
AN> нагрузке. Если машина не multi-core и не Hyper-Threading - то имхо даже этого
AN> не будет.
Система многоядерная... два двухядерных оптерона 2ххх серии....
причем бага гораздо интереснее чем можно себе представить
сделал test.c с содержимым....
int main(char** argv, int argc) {
for(int i=0; i < 5; i++) {
__asm ("pause");
}
}
На 12-й студии
-bash-3.00# cc test.c
-bash-3.00# cc -fast test.c
"test.c", [main]:ube: error: SIGNAL: Segmentation Fault
cc: ube failed for test.c
на 11-й все нормально в обоих случаях...
Единственное что я 11 стоит на amd64 двухядерном.... а 12 на оптеронах
Socket F... не может ли быть трабла в процах, или это все таки чистый
баг компиляторов 12-й студии?
--
Best regards,
Alexey mailto:x-phoenix at mail.ru
More information about the nginx-ru
mailing list