Size: a a a

Ассемблер

2020 June 19

RS

Rusty Shackleford in Ассемблер
то, что они не инициализируются это ясно, но теневая копия должна в стеке быть вроде
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
а что творится выше? а то получается из контекста скрин выдран
источник

A

Aleksandr in Ассемблер
много всего
источник

A

Aleksandr in Ассемблер
источник

RS

Rusty Shackleford in Ассемблер
а может быть потому, что в данных вызовах нет нужды сохранять регистры и нет вызовов внутри
источник

A

Aleksandr in Ассемблер
где тут говориться о теневой копии?
источник

s

s54816 in Ассемблер
must always allocate sufficient space to store four register parameters, even if the callee doesn't take that many parameters
источник

RS

Rusty Shackleford in Ассемблер
The x64 Application Binary Interface (ABI) uses a four-register fast-call calling convention by default. Space is allocated on the call stack as a shadow store for callees to save those registers.
источник

A

Aleksandr in Ассемблер
а, вы о стеке
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
так теневая область это и есть стек
источник

RS

Rusty Shackleford in Ассемблер
если писать на асме то можно не выделять если нет других вызовов внутри процедуры
источник

A

Aleksandr in Ассемблер
я этот термин первый раз слышу
источник

RS

Rusty Shackleford in Ассемблер
компилятор такое не позволит мне кажется
источник

A

Aleksandr in Ассемблер
на скриншоте выше позволил
источник

A

Aiwan ╭∩╮ (òÓ,) ╭∩╮... in Ассемблер
Aiwan ╭∩╮ (òÓ,) ╭∩╮
так теневая область это и есть стек
или shadow space
источник

RS

Rusty Shackleford in Ассемблер
Aleksandr
на скриншоте выше позволил
да он выделил наверное где-то выше сразу для всех вызовов, нужно пронаблюдать в отладчике для достоверности
источник

A

Aleksandr in Ассемблер
именно
источник

A

Aleksandr in Ассемблер
то же, что вы оптимизируете вручную в ассемблере
источник

A

Aleksandr in Ассемблер
собственно, и где обхитрили компилятор?
источник

RS

Rusty Shackleford in Ассемблер
так в ассемблере можно вообще не выделять если в этом нет смысла, если нет нужды сохранять регистры в стеке
источник