DWORD var1 = 0xF1F1F2F2;
void Func(void)
{
DWORD var2 = <любое значение>;
if (var2 == var1)
{
....
}
}
Приручить компилятор
Код:
Компилятор при линковке выдает вот такой код в месте сравнения:
Код:
CMP ECX, F1F1F2F2h
Мне необходимо чтобы компилятор НЕ подставлял ЗНАЧЕНИЕ глобальной переменной в секцию кода, а сравнивал переменную непосредственно с ячейкой памяти в data секии, т.е. вот как то так:
Код:
CMP ECX, DWORD PTR [адрес var1]
Можно ли как-то настроить компилятор, чтобы он линковал так как мне надо, или нужно как-то особым образом формировать код?
P.S. Компилятор от MS VC++ 2008
Код:
volatile DWORD var1 = 0xF1F1F2F2;
Хехе))) Действительно, помогло)) Огромное спасибо ruprogman! Теперь он сравнивает два регистра, предварительно помещая во второй содержимое переменной - то что и было нужно.