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

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

Войти
Регистрация
Восстановить пароль
 
Некий_Чел
3 / 3 / 0
Регистрация: 27.05.2012
Сообщений: 115
#1

Intel Intrinsic. Что будет, если объявить много __m128 переменных? - C++

29.07.2016, 12:21. Просмотров 202. Ответов 3
Метки нет (Все метки)

Использую функции для работы с xmm-регистрами. У меня на машине их 16, однако компилятор позволяет объявлять переменные типа __m128 сколь угодно много раз.
Тогда если я создам 16 переменных в начале программы, которые будут существовать вплоть до её завершения, то будут ли новые переменные, которые я создам далее, перезаписывать или вытеснять переменные из уже занятых регистров?
Или ожидается какое-то другое поведение?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.07.2016, 12:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Intel Intrinsic. Что будет, если объявить много __m128 переменных? (C++):

Что будет в переменных в результате выполнения кода? - C++
программный код: int z=6, x=-2, y=4; z+=y=5+x--; Что будет в переменных в результате выполнения?

Что будет находится в переменных a и b после выполнения следующего фрагмента - C++
Что будет находится в переменных a и b после выполнения следующего фрагмента программы: int a=5, b=2; a*=a-b++;

Что будет если так сделать? - C++
Всем привет! Что будет если применить такую конструкцию int global; void Test(const int& a) { global = a; } То...

Что если число будет слишком большим и не поместиться в int? - C++
Собственно есть char*, надо в int. Вроде есть atoi для этих целей. Но тут появляется пара неудобных вопросов: 1) Что если число будет...

Что будет, если new вызвать 2 раза с одним и тем же указателем? - C++
Собственно вопрос что будет? напрмер int *i=new(1); i=new(3); i будет сылаться на ячеку со значенеим 3 это ясно, а куда денется ячейка со...

Для чего используется _getch() и что будет, если ее не использовать? - C++
_getch(); 1)для чего это? 2)что будет,если написать без него? ..... cout << "периметр равен:" << " " << p << endl; ...

3
nmcf
5349 / 4669 / 1562
Регистрация: 14.04.2014
Сообщений: 18,605
29.07.2016, 12:31 #2
Они в памяти, что ли, не хранятся?
0
nimazzzy
Заблокирован
29.07.2016, 12:36 #3
Поведение простое. Значение переменных в регистр загружает операция загрузки, а не простое объявление/определение.
Цитата Сообщение от Некий_Чел Посмотреть сообщение
однако компилятор позволяет объявлять переменные типа __m128 сколь угодно много раз.
Наверное, ты где-то видел информацию о том, что переменные хранятся в регистрах Где?
0
Некий_Чел
3 / 3 / 0
Регистрация: 27.05.2012
Сообщений: 115
29.07.2016, 14:39  [ТС] #4
Цитата Сообщение от nimazzzy Посмотреть сообщение
Наверное, ты где-то видел информацию о том, что переменные хранятся в регистрах Где?
Мб я неправильно понял, но:
https://msdn.microsoft.com/ru-ru/library/ayeb3ayc(v=vs.80).aspx
>A variable of type __m128 maps to the XMM[0-7] registers.
0
29.07.2016, 14:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.07.2016, 14:39
Привет! Вот еще темы с ответами:

Что будет, если два раза динамически выделить память по одному указателю? - C++
Например: int *mas = new int; mas = new int;

Что будет,если закрыть хэндл с открытым процессом,потоком? Или это только информация? - C++
Что будет,если закрыть хэндл с открытым процессом,потоком? Или это только информация?

Можно ли в цикле for объявить две переменных разного типа? - C++
Есть такой цикл for(сhar s='A',int i=0; s<'Z'; s++,i++) {} Builder 6 выдает ошибки : Unit1.cpp(21): E2040 Declaration terminated...

Можно ли так объявить имена переменных типа структуры - C++
Страус пишет что "имя нового типа можно использовать сразу же после его появления, а вовсе не после его полного определения". Для чего так...


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

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

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