Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2015.09.10;
Скачать: CL | DM;

Вниз

inline assembler в XE6   Найти похожие ветки 

 
dmk ©   (2014-11-02 12:00) [0]

Всем привет! Подскажите пожалуйста знатоки ассемблера, можно ли каким-нибудь способом в теле функции или процедуры писать inline-вставки для платформы 64 бита.
Для 32 бит все нормально, а для 64-х вроде надо выносить все в отдельную процедуру/функцию? Может кто знает?


 
Дмитрий Белькевич ©   (2014-11-02 15:10) [1]

Увы, но инлайн - никак. Есть ли вообще критическая необходимость мешать код? Мы у себя переписали без особенных проблем на одельные функции.


 
dmk ©   (2014-11-02 17:11) [2]

Область видимости переменных пропадает. Приходится все заново писать: новые параметры, новая логика, по другому сохраняется стек ну и т.п. В общем полная несовместимость. Раньше в EAX например передавался первый параметр, в EDX - второй, а сейчас там может быть что угодно: хоть счетчик, хоть self. Просто переделывать много.


 
MBo ©   (2014-11-02 18:40) [3]

>а сейчас там может быть что угодно: хоть счетчик, хоть self
Как это - что угодно? Для 64 есть единственное соглашение:
целые аргументы в регистрах RCX, RDX, R8, R9 и т.д.
http://msdn.microsoft.com/en-us/library/ms235286.aspx


 
dmk ©   (2014-11-02 18:54) [4]

Спасибо! Не знал. На сайте эмбаркадеро такого не нашел.


 
MBo ©   (2014-11-02 19:32) [5]

Есть вкратце (найти действительно трудновато)
http://docwiki.embarcadero.com/RADStudio/XE6/en/Using_Inline_Assembly_Code


 
dmk ©   (2014-11-02 19:52) [6]

>MBo
Поклонище!


 
silver ©   (2014-11-02 20:22) [7]

Mbo это Мбо
здесь нет более полезных людей для делфи



Страницы: 1 вся ветка

Текущий архив: 2015.09.10;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.04 c
2-1392639364
Васька
2014-02-17 16:16
2015.09.10
Открытие формы


2-1393479979
Васька
2014-02-27 09:46
2015.09.10
Переключение между дочерними окнами


15-1413634226
demo
2014-10-18 16:10
2015.09.10
запись видео экрана


15-1414083578
Kerk
2014-10-23 20:59
2015.09.10
Delphi -> Object Pascal


15-1418808674
zagayevskiy
2014-12-17 12:31
2015.09.10
Игра для Android





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский