Size: a a a

BY Microsoft .NET User Group

2018 August 03

E

EgorBo in BY Microsoft .NET User Group
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
bswap RAX
xchg RAX, RDX
bswap RAX
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
эммм... чото нифига не одна инструкция
источник

E

EgorBo in BY Microsoft .NET User Group
ну образно
источник

E

EgorBo in BY Microsoft .NET User Group
:D
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
а ведь такая инструкция уже хрен знает сколько лет в x86 есть
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
486
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
о, так оно на любом регистре работает
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
я думал только на ax
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
короче, Егор, пили интрисик :)
источник

E

EgorBo in BY Microsoft .NET User Group
а и да, всё так я был прав на счет бенчмарка - надо было делать внутри
return wroteSize ;
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
смотри какая прелесть
источник

A

Anatoly in BY Microsoft .NET User Group
это всё не отвечает на вопрос - почему с минусом охренеть как медленно стало =)
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
@EgorBo : а как технически интрисики вводятся в дотнеты? и можно ли сделать свои интрисики?
источник

A

Anatoly in BY Microsoft .NET User Group
источник

A

Anatoly in BY Microsoft .NET User Group
EgorBo
а и да, всё так я был прав на счет бенчмарка - надо было делать внутри
return wroteSize ;
что-то у меня этот ретурн ничего не поменял в цифрах
источник

E

EgorBo in BY Microsoft .NET User Group
Alexey Tkachenko
@EgorBo : а как технически интрисики вводятся в дотнеты? и можно ли сделать свои интрисики?
самый простой способ - навешиваешь атрибут [Intrinsics] и в джите переоопределяешь как хочешь - примеров масса.
посложнее - это когда как в случае с реверсом - определяешь шаблон по дереву
источник

AT

Alexey Tkachenko in BY Microsoft .NET User Group
то есть для этого надо жида пнуть? только в пользовательском коде так сделать нельзя, верно?
источник

E

EgorBo in BY Microsoft .NET User Group
Anatoly
это всё не отвечает на вопрос - почему с минусом охренеть как медленно стало =)
надо смотреть асм. Первое - это вставляется проверка на оверфлоу. ты отнимаешь у беззнакового типа
второе как я сказал - без минуса код легко векторизуем через sse, но это не наш случай, джит такое не умеет)
источник