Re[4]: Определение смещения внутри функции
От: tacit_one Россия  
Дата: 15.03.05 15:23
Оценка:
Здравствуйте, srggal, Вы писали:


S>Достаточно одной, причем если напрячься то можно свести затраты к минимуму push/pop IP, а это, ИМХО, уже как раз и есть нормально, я сам сталкивался с необходимостью балансирования на грани выделения отдельных подпрограмм ( функциями уже трудно назвать naked со своим эпилогом ), и затратами на вызов функции.


S>Самое главное не портить регистры в naked, тогда все будет


одну... ну, теперь представь вот такой код

func()
{
  _asm
  {
   ...
   _LABEL0x00:
     _LABEL0x01:
     ...
     _LABEL0xff:
     ...
  }
}

main()
{
  UINT offset = _LABEL — func;
}


а ещё представь, что функция func загружается не загрузчиком, а вручную,
и предсавь, во что превратится код, если в C файле будет 0xFF _naked функций...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.