LINUX.ORG.RU

История изменений

Исправление MOPKOBKA, (текущая версия) :

А всем прочим штукам, они неадекватны и общий код длиннее, чем регистровый.

Ахах, все именно так, только с точностью наоборот! Он намного более плотный, а если уж рассматривать шитый, то он в несколько раз может превосходить нативный. Но отойдем от шитого кода, при регистровой модели каждый вызов сопровождается сохранением или настройкой регистров, а в стековой модели таких затрат нет, часто функции вызываются просто как call call call, без настройки.

Посмотри на код который предоставил monk с рычагом, там нету swap. Может внутри он будет, но ты надеюсь понимаешь что swap либо выбрасывается, либо превращается через опкод в переименование регистра, что довольно дешево. Так вот, никакой настройки, пересылки из rax в rdx, или очистки стека, потому что стек чистится операциями.

и внутри стековой машины, будет все равно более эффективное регистровое ядро

На x86 безусловно, на настоящих стековых машинах верхушка стека закешированна, можно сказать что это регистры, а можно так не говорить.

поэтому регистры и явное указание операндов и доминирует.

Много где стековая модель, даже в биткоин засунули, и JVM.

Исправление MOPKOBKA, :

А всем прочим штукам, они неадекватны и общий код длиннее, чем регистровый.

Ахах, все именно так, только с точностью наоборот! Он намного более плотный, а если уж рассматривать шитый, то он в несколько раз может превосходить нативный. Но отойдем от шитого кода, при регистровой модели каждый вызов сопровождается сохранением или настройкой регистров, а в стековой модели таких затрат нет, часто функции вызываются просто как call call call, без настройки.

Посмотри на код который предоставил monk с рычагом, там нету swap. Может внутри он будет, но ты надеюсь понимаешь что swap либо выбрасывается, либо превращается через опкод в переименование регистра, что довольно дешево. Так вот, никакой настройки, пересылки из rax в rdx, очистки стека.

и внутри стековой машины, будет все равно более эффективное регистровое ядро

На x86 безусловно, на настоящих стековых машинах верхушка стека закешированна, можно сказать что это регистры, а можно так не говорить.

поэтому регистры и явное указание операндов и доминирует.

Много где стековая модель, даже в биткоин засунули, и JVM.

Исправление MOPKOBKA, :

А всем прочим штукам, они неадекватны и общий код длиннее, чем регистровый.

Ахах, все именно так, только с точностью наоборот! Он намного более плотный, а если уж рассматривать шитый, то он в несколько раз может превосходить нативный. Но отойдем от шитого кода, при регистровой модели каждый вызов сопровождается сохранением или настройкой регистров, а в стековой модели таких затрат нет, часто функции вызываются просто как call call call, без настройки.

Посмотри на код который предоставил monk с рычагом, там нету swap. Может внутри он будет, но ты надеюсь понимаешь что swap либо выбрасывается, либо превращается через опкод в переименование регистра, что довольно дешево. Так вот, никакой настройки, пересылки из rax в rdx итд.

и внутри стековой машины, будет все равно более эффективное регистровое ядро

На x86 безусловно, на настоящих стековых машинах верхушка стека закешированна, можно сказать что это регистры, а можно так не говорить.

поэтому регистры и явное указание операндов и доминирует.

Много где стековая модель, даже в биткоин засунули, и JVM.

Исходная версия MOPKOBKA, :

А всем прочим штукам, они неадекватны и общий код длиннее, чем регистровый.

Ахах, все именно так, только с точностью наоборот! Он намного более плотный, а если уж рассматривать шитый, то он в несколько раз может превосходить нативный. Но отойдем от шитого кода, при регистровой модели каждый вызов сопровождается сохранением или настройкой регистров, а в стековой модели таких затрат нет, часто функции вызываются просто как call call call, без настройки.

и внутри стековой машины, будет все равно более эффективное регистровое ядро

На x86 безусловно, на настоящих стековых машинах верхушка стека закешированна, можно сказать что это регистры, а можно так не говорить.

поэтому регистры и явное указание операндов и доминирует.

Много где стековая модель, даже в биткоин засунули, и JVM.