История изменений
Исправление praseodim, (текущая версия) :
glibc printf может и не поддерживать. В мане нету например. А даже если будет поддерживать - то несовместимо с другими libc. Напиши свой (печатаешь цифру слева от точки, вычитаешь её, умножаешь на 10 и так по циклу).
Неужели нет какой-то относительно стандартной библиотеки? Не в glibc, так просто что-то из поставки gcc?
Потому что sse не поддерживает этот тип (у х87 есть три типа: одиночной, двойной и расширенной точности).
Если у меня не ложные воспоминания, то есть еще 64-х битный целый. Был смысл на 16-ти битных x86 и 32-битных i386. Но думал, что если задано sse / sse2, то полагалось бы хоть через отдельную библиотеку и очень медленно, но считать таки 80-ти битный тип без использования x87
Аналогично, х87 не поддерживает его. Насчёт того как он вообще работает не знаю, мне казалось что предел точности sse это double.
sse2 тоже не поддерживает. Вызываются отдельные библиотечные функции для работы с 128-битным типом. И тут sse2 и 387 в равных условиях - для обоих это не аппаратный тип и для обоих это удвоенный double. Я еще понимаю 80-битный тип сильно не стандартный.
-mfpmath=avx какое-нить?
Допускает только 387 или sse или комбинацию 387 и sse
Исправление praseodim, :
glibc printf может и не поддерживать. В мане нету например. А даже если будет поддерживать - то несовместимо с другими libc. Напиши свой (печатаешь цифру слева от точки, вычитаешь её, умножаешь на 10 и так по циклу).
Неужели нет какой-то относительно стандартной библиотеки? Не в glibc, так просто что-то из поставки gcc?
Потому что sse не поддерживает этот тип (у х87 есть три типа: одиночной, двойной и расширенной точности).
Если у меня не ложные воспоминания, то есть еще 64-х битный целый. Был смысл на 16-ти битных x86 и 32-битных i386. Но смысл в том, что если задано sse / sse2, то полагалось бы хоть через отдельную библиотеку и очень медленно, но считать таки 80-ти битный тип.
Аналогично, х87 не поддерживает его. Насчёт того как он вообще работает не знаю, мне казалось что предел точности sse это double.
sse2 тоже не поддерживает. Вызываются отдельные библиотечные функции для работы с 128-битным типом. И тут sse2 и 387 в равных условиях - для обоих это не аппаратный тип и для обоих это удвоенный double. Я еще понимаю 80-битный тип сильно не стандартный.
-mfpmath=avx какое-нить?
Допускает только 387 или sse или комбинацию 387 и sse
Исправление praseodim, :
glibc printf может и не поддерживать. В мане нету например. А даже если будет поддерживать - то несовместимо с другими libc. Напиши свой (печатаешь цифру слева от точки, вычитаешь её, умножаешь на 10 и так по циклу).
Неужели нет какой-то относительно стандартной библиотеки? Не в glibc, так просто что-то из поставки gcc?
Потому что sse не поддерживает этот тип (у х87 есть три типа: одиночной, двойной и расширенной точности).
Если у меня не ложные воспоминания, то есть еще 64-х битный целый. Но смысл в том, что если задано sse / sse2, то полагалось бы хоть через отдельную библиотеку и очень медленно, но считать таки 80-ти битный тип.
Аналогично, х87 не поддерживает его. Насчёт того как он вообще работает не знаю, мне казалось что предел точности sse это double.
sse2 тоже не поддерживает. Вызываются отдельные библиотечные функции для работы с 128-битным типом. И тут sse2 и 387 в равных условиях - для обоих это не аппаратный тип и для обоих это удвоенный double. Я еще понимаю 80-битный тип сильно не стандартный.
-mfpmath=avx какое-нить?
Допускает только 387 или sse или комбинацию 387 и sse
Исходная версия praseodim, :
glibc printf может и не поддерживать. В мане нету например. А даже если будет поддерживать - то несовместимо с другими libc. Напиши свой (печатаешь цифру слева от точки, вычитаешь её, умножаешь на 10 и так по циклу).
Неужели нет какой-то относительно стандартной библиотеки? Не в glibc, так просто что-то из поставки gcc?
Потому что sse не поддерживает этот тип (у х87 есть три типа: одиночной, двойной и расширенной точности).
Если у меня не ложные воспоминания, то есть еще 8-ми битный целый. Но смысл в том, что если задано sse / sse2, то полагалось бы хоть через отдельную библиотеку и очень медленно, но считать таки 80-ти битный тип.
Аналогично, х87 не поддерживает его. Насчёт того как он вообще работает не знаю, мне казалось что предел точности sse это double.
sse2 тоже не поддерживает. Вызываются отдельные библиотечные функции для работы с 128-битным типом. И тут sse2 и 387 в равных условиях - для обоих это не аппаратный тип и для обоих это удвоенный double. Я еще понимаю 80-битный тип сильно не стандартный.
-mfpmath=avx какое-нить?
Допускает только 387 или sse или комбинацию 387 и sse