- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
void __attribute__ ((naked)) c8_handler_i() {
asm volatile (
"push %%ebp \n\
mov %%esp, %%ebp \n\
sub $20, %%esp \n\
mov %%eax, -4(%%ebp) \n\
mov %%ebx, -8(%%ebp) \n\
mov %%edx, -12(%%ebp) \n\
mov %[tasks], %%ebx \n\
mov %[cur_task], %%eax \n\
mov %[t_sz], %%edx \n\
mov (%%eax), %%eax \n\
mul %%edx \n\
add %%eax, %%ebx \n\
mov -4(%%ebp), %%eax \n\
mov %%eax, (%%ebx) \n\
mov -8(%%ebp), %%eax \n\
mov %%eax, 4(%%ebx) \n\
mov %%ecx, 8(%%ebx) \n\
mov -12(%%ebp), %%eax \n\
mov %%eax, 12(%%ebx) \n\
mov %%esi, 16(%%ebx) \n\
mov %%edi, 20(%%ebx) \n\
mov %%ebp, 24(%%ebx) \n\
addl $4, 24(%%ebx) \n\
mov (%%ebp), %%eax \n\
mov %%eax, 28(%%ebx) \n\
mov -4(%%ebp), %%eax \n\
mov -8(%%ebp), %%ebx \n\
mov -12(%%ebp), %%edx \n\
add $20, %%esp \n\
pop %%ebp \n\
iret"
:: [tasks] "i" (tasks), [cur_task] "i" (&cur_task),
[t_sz] "i" (sizeof(task)), [t_eip] "i" (offsetof(task, eip)),
[t_ebx] "i" (offsetof(reg_values, ebx))
);
}
baropinho 11.05.2017 21:49 # −8
d_fomenok 12.05.2017 08:06 # −9
# C++
Скблд, т упрт?
baropinho 12.05.2017 09:55 # −8
cykablyad 12.05.2017 21:16 # 0
doctor_stertor 12.05.2017 21:43 # −1
Они стойкие, твёрдые. Без кавычек.
bormand 13.05.2017 08:36 # +1
CrashTesterAnusov 14.05.2017 03:23 # 0
AHCKuJlbHblu_nemyx 02.06.2019 12:58 # 0
Antervis 12.05.2017 09:19 # 0
gost 12.05.2017 16:11 # 0
Antervis 12.05.2017 17:05 # 0
bormand 12.05.2017 18:09 # +2
Нафига? Оно же только объём увеличивает. На скорость не должно повлиять, особенно если всё это говно в отдельную секцию падает.
> исключения
А я бы оставил ради прикола. Хоть какая-то новизна у оси появится. Да и есть вероятность, что на позитивных кейсах даже быстрее будет работать.
cykablyad 12.05.2017 20:26 # 0
bormand 13.05.2017 08:45 # 0
libsupc++. Там ему несколько сишных функций типа abort()', malloc()'а и т.п. нужно написать и указатель на секцию с экцепшонами передать.
На осдеве где-то была статейка как это делается. Я сильно не тестил, но исключение кидалось и ловилось.
j123123 12.05.2017 20:40 # −8
sos 13.05.2017 04:00 # 0
TeaBag 13.05.2017 15:04 # −6
bormand 12.05.2017 18:19 # +1
cykablyad 12.05.2017 20:24 # 0
bormand 12.05.2017 18:42 # 0
З.Ы. Чё-то магических оффсетов дохуя.
cykablyad 12.05.2017 20:25 # 0
doctor_stertor 12.05.2017 20:49 # 0
CrashTesterAnusov 14.05.2017 03:24 # 0
doctor_stertor 14.05.2017 17:06 # 0
Такие мне больше всего и нравятся. Романтики из коробки. Ах, как классно гулять и общаться и ними!.. Потом они вырастают, уходят/приходят из армии - но уже обывателями с житейским умом, зацикленным на грубой развлекухе. Им со мной становится неинтересно. Как, впрочем, и мне с ними.
guest8 02.06.2019 14:31 # −999
cmepmop 02.06.2019 17:54 # 0
Я с такими не дружу.
cmepmop 02.06.2019 19:57 # 0
OCETuHCKuu_nemyx 02.06.2019 22:17 # 0
doctor_stertor 12.05.2017 20:52 # 0
CrashTesterAnusov 14.05.2017 03:24 # 0
а еще об этом говорит at&t нотация
кричит прямо
TeaBag 13.05.2017 14:52 # −6
AHCKuJlbHblu_nemyx 02.06.2019 12:59 # 0