Anonymous
один чит на фортнихт за 60 бачей в китае продается нужно будет крякоть раз в 2 недели за каждый кряк буду 50к платить
Anonymous
@KosBeg
bilka00
Хм
bilka00
Неплохо
bilka00
Если тут никого не найдешь писани мне я с челом сведу
bilka00
50к
Ну и с этого начинать нужно)
Anonymous
В виндовс кернел кто шарит?
електр🟢нік ✙🟠рчбеч ඞ
Есть шарящие в GCC inline assembly ?
Aiwan \ (•◡•) / _bot
Есть шарящие в GCC inline assembly ?
Не шарю, а как так получилось что в такой теме вопросы появились?
електр🟢нік ✙🟠рчбеч ඞ
електр🟢нік ✙🟠рчбеч ඞ
пишу умножение длинных чисел на 512+ бит
електр🟢нік ✙🟠рчбеч ඞ
за О(log n)
електр🟢нік ✙🟠рчбеч ඞ
Avx2?
не, обычный х86
Aiwan \ (•◡•) / _bot
JeisonWi
не, обычный х86
Use SSE, it is everywhere
електр🟢нік ✙🟠рчбеч ඞ
Use SSE, it is everywhere
зачем мне SIMD?
електр🟢нік ✙🟠рчбеч ඞ
Faster
так мне из команд нужны только mul и add/adc
електр🟢нік ✙🟠рчбеч ඞ
но последние чет работают очень плохо
Aiwan \ (•◡•) / _bot
Не рационально ты асм используешь
електр🟢нік ✙🟠рчбеч ඞ
рационализировать буду потом
Aiwan \ (•◡•) / _bot
Use SSE, it is everywhere
електр🟢нік ✙🟠рчбеч ඞ
мне нужно чтобы оно просто работало
Aiwan \ (•◡•) / _bot
електр🟢нік ✙🟠рчбеч ඞ
Тогда зачем инлайн?
1) нет умножения 32*32=64 2) нет прибавления с переносом
s54820
1) нет умножения 32*32=64 2) нет прибавления с переносом
GCC отлично понимает, что (foo + bar) < foo используется для вычисления carry и использует adc, если ты этот carry потом куда-то прибавляешь. MSVC тоже умеет.
електр🟢нік ✙🟠рчбеч ඞ
Теперь не линкует.....
kitsu
Теперь не линкует.....
в shrink.o символ shrink_32s_to_128 то есть?
kitsu
(дай угадаю, что нет)
електр🟢нік ✙🟠рчбеч ඞ
kitsu
в самом верху видно
видно, что в main.o этот символ неприлинкован
електр🟢нік ✙🟠рчбеч ඞ
$ nm shrink.o 00000000 t shrink_32s_to_128
електр🟢нік ✙🟠рчбеч ඞ
это не оно?
електр🟢нік ✙🟠рчбеч ඞ
Заработало. Забыл добавить global в асм-файле
s54820
UB ж
Только для signed.
JeisonWi
https://yurichev.com/blog/UAL/
kitsu
https://yurichev.com/blog/UAL/
> sounds a bit sarcastic for a book of ~1000 pages lold
JeisonWi
Yura
include 'win32ax.inc' .code main: invoke MessageBox,NULL,'Hello, World!',ff,MB_OK ff: db "Sosossoski",0 invoke ExitProcess,0 .end main
Yura
почему, если ff:db... после первого инвоука все нормально работает, но если написать так
Yura
include 'win32ax.inc' .code main: ff: db "Sosossoski",0 invoke MessageBox,NULL,'Hello, World!',ff,MB_OK invoke ExitProcess,0 .end main
Yura
то месадж бокс даже не появится
Ask
потомучто данные нужно в секцию данных пихать а не кода)
t1db1t
В виндовс кернел кто шарит?
t1db1t
me
t1db1t
смех и слезы, чувак
Ask
этапять)
t1db1t
открой дизассемблер, посмотри какая каша после MessageBox
bilka00
Чот зашквар
bilka00
>шарит у win kernel
bilka00
>не может понять самую говнистую ошибочку
Yura
В виндовс кернел кто шарит?
асм и кернел разные вещи
JeisonWi
Жаль, что попкорна нет
JeisonWi
Продолжайте
Yura
я обиделся. всё.
t1db1t
книги и букву это разные вещи
bilka00
можно ему по ебалу дать ?
Yura
Анимешники закомплексованные подъехали
Aiwan \ (•◡•) / _bot
include 'win32ax.inc' .code main: ff: db "Sosossoski",0 invoke MessageBox,NULL,'Hello, World!',ff,MB_OK invoke ExitProcess,0 .end main
include 'win32ax.inc' .code main: jmp @f ff: db "Sosossoski",0 @@: invoke MessageBox,NULL,'Hello, World!',ff,MB_OK invoke ExitProcess,0 .end main
Aiwan \ (•◡•) / _bot
Так попробуй
Aiwan \ (•◡•) / _bot
... Если хочешь данные в секции кода иметь. Но это не комильфо
bilka00
пусть попробует туда еще писать...
Aiwan \ (•◡•) / _bot
То же верно
bilka00
Анимешники закомплексованные подъехали
наверное мне стоит подгореть
bilka00
но как ты можешь хоть что то понимать в ядре не умея юзать отладчик и не понимая разницу между двумя участками кода выше
bilka00
ничто и не мешает перед main: сунуть, оно еп сдвинет прост )
А еще ничего не мешает врубить мозг и к примеру создать секцию данных
bilka00
)
bilka00
Да выше почитай
bilka00
тут дело не в извращениях )
Ask
ну так то да)
Aiwan \ (•◡•) / _bot
ничто и не мешает перед main: сунуть, оно еп сдвинет прост )
Не сдвинет. В. Code точка входа как start вроде прописан, здесь мейн как пустая ненужная метка
s54820
Не сдвинет. В. Code точка входа как start вроде прописан, здесь мейн как пустая ненужная метка
Там win32ax.inc. В масмовом стиле. Тут точка входа определяется по .end: .end main.
Aiwan \ (•◡•) / _bot
На .end main не обратил внимания