Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Соглашение Fast call - C++

26.04.2014, 08:50. Просмотров 201. Ответов 1
Метки нет (Все метки)

Аргументы значений с плавающей запятой и двойной точностью передаются в XMM0 – XMM3 (до 4) с помощью гнезда целых чисел (RCX, RDX, R8 и R9), которое обычно и используется, в то время как гнездо кардинальных чисел отклоняется (см. пример) и наоборот.
,
Floating-point and double-precision arguments are passed in XMM0 – XMM3 (up to 4) with the integer slot (RCX, RDX, R8, and R9) that would normally be used for that cardinal slot being ignored (see example) and vice versa.
. Как это вообще понять?
__m128 types, arrays and strings are never passed by immediate value but rather a pointer is passed to memory allocated by the caller. Structs/unions of size 8, 16, 32, or 64 bits and __m64 are passed as if they were integers of the same size. Structs/unions other than these sizes are passed as a pointer to memory allocated by the caller. For these aggregate types passed as a pointer (including __m128), the caller-allocated temporary memory will be 16-byte aligned.
Что такое __m128 и __m64?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.04.2014, 08:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Соглашение Fast call (C++):

Лицензионное соглашение для программы - C++
Очень часто с программами поставляются файлы с лицензионным соглашением на использование этих программ. У меня вот такой вопрос, а надо ли...

Как зовут соглашение о вызовах для функции main консольного Window x 64 приложения? - C++
Как зовут соглашение о вызовах для функции main консольного Window x 64 приложения?

Оператор delete(ошибка) - free(): invalid next size (fast): 0x098f7008 *** - C++
Делаю некое подобие функции itoa: char* c_itoa(int,char*,int):Реализацию сделал так(упрощённый вид):char* c_itoa(int number,char*...

Call of nonfunction - C++
Написал программу: #include <iostream.h> #include <math.h> #include <conio.h> void main() { clrscr(); float...

Call of nonfunction - C++
#include <stdio.h> #include <conio.h> #include <math.h> double eps = 1e-9; int k; //------------epsilon double ep (double x) ...

EOF: call of nonfunction - C++
Не пойму в чем ошибка, пишет call of nonfunction

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Nick Alte
Эксперт С++
1636 / 1008 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
26.04.2014, 09:22 #2
Цитата Сообщение от taras atavin Посмотреть сообщение
Как это вообще понять?
Насколько я понимаю, достаточно просто. Если первый параметр целый, он передаётся в регистре RCX, а регистр XMM0 игнорируется. Если он вещественный, то передаётся в XMM0, а RCX игнорируется. Аналогично с тремя следующими, они передаются в соответствующих регистрах. Остальное, как я понимаю, уже размещается в памяти, на стеке.
Цитата Сообщение от taras atavin Посмотреть сообщение
Что такое __m128 и __m64?
Типы данных, используемые SIMD-расширениями процессора (SSE и далее).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.04.2014, 09:22
Привет! Вот еще темы с ответами:

Шаблоны no match for call to - C++
Привет всем! вот так написал шаблон template<typename Vertex> void operator ()(Vertex vertex, vector<pair<int, Vertex>>& map) ...

Call to undefined function - C++
Добрый день, форумчане. Возникла типичная ошибка с функцией. Никак не могу вкурить, в чём проблема. Что подскажете? ...

No matching function to call to - C++
не могу никак понять, в чём дело: class field_box{ public: field_box(vec2 ipos,vec2 isize, int a){ ...

exceptions (no matching function for call to .) - C++
Помогите, пожалуйста, разобраться с исключениями: double ctok(double c) { return c + 273.15; } int main() { try { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru