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

Вниз

Delphi + NEXTGEN (LLVM) = крах!   Найти похожие ветки 

 
Пятница 13   (2014-02-12 11:59) [0]

Откомпилировал в XE5 релизную версию с максимальными настройками оптимизации
Открыл в IDA Pro сгенерированный *.o (*.so тоже открывал, но там фиг найдёшь функцию)

Барабанная дробь...
function _add(const X, Y: integer): integer;
begin
 Result := X + Y;
end;


Дизассемблируется в:
; Test_platform::_add(int, int)
_ZN13Test_platform4_addEii              ; CODE XREF: Test_platform::RUN(void)+1Ap

var_10          = -0x10
var_C           = -0xC
var_8           = -8
var_4           = -4

                STR.W           LR, [SP,#var_4]!
                SUB             SP, SP, #0xC
                STR             R1, [SP,#0x10+var_C]
                STR             R0, [SP,#0x10+var_8]
                LDR             R1, [SP,#0x10+var_C]
                ADD             R0, R1
                STR             R0, [SP,#0x10+var_10]
                ADD             SP, SP, #0xC
                LDR.W           LR, [SP+4+var_4],#4
                BX              LR


 
Ega23 ©   (2014-02-12 12:49) [1]

А ты упорный...


 
Пятница 13   (2014-02-12 13:38) [2]

> Ega23 ©   (12.02.14 12:49) [1]

Спасибо
Только компилятору этим не поможешь


 
Брат Бората Батрутдинова   (2014-02-12 15:14) [3]

Может я один не понимаю...
А что здесь не так то ?


 
Германн ©   (2014-02-12 15:35) [4]


> Брат Бората Батрутдинова   (12.02.14 15:14) [3]

Птибурдуков сменил не только фамилию, но и национальность?
)))


 
Пятница 13   (2014-02-12 16:12) [5]

> Брат Бората Батрутдинова   (12.02.14 15:14) [3]
> Может я один не понимаю...
> А что здесь не так то ?


должно быть 2 команды:
ADD  R0, R1
BX   LR


А здесь их значительно больше
Остальные команды взаимодействуют со стеком
Складывается впечатление, что Emba не смогла по нормальному настроить LLVM, чтобы там были оптимизирующие ключи компилятора


 
Дмитрий Белькевич   (2014-02-12 17:29) [6]

>Птибурдуков сменил не только фамилию, но и национальность?

Главное - что бы с ориентацией было всё в порядке.

>А ты упорный...

Тему таки снесли? :) отписывался, помню...


 
Rouse_ ©   (2014-02-12 19:24) [7]


> Пятница 13   (12.02.14 11:59) 

Напомни мне завтра чтоб я под yagarto-вским компилером это дело собрал и проверил.
Там реально нахрен не нужны стековые операции на обычной конкатенации.



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

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

Наверх




Память: 0.48 MB
Время: 0.005 c
2-1381918147
aka
2013-10-16 14:09
2014.09.14
IdHTTP работа с сессиями


11-1254087305
intlex
2009-09-28 01:35
2014.09.14
Creation Order (Порядок создания компонентов)


15-1391801247
Novicer
2014-02-07 23:27
2014.09.14
Работа программы в сетевом режиме


15-1391632202
Юрий
2014-02-06 00:30
2014.09.14
С днем рождения ! 6 февраля 2014 четверг


15-1391851286
Savek
2014-02-08 13:21
2014.09.14
Как включить реакцию на исключения