Чтобы добавлять сообщения и комментарии, .

@ComradeDOS:
ComradeDOS

html5rocks.com Stream updates with SSE

@qrilka:
qrilka

Yesod-овский логгинг нутри IO внезапно схлапывается в return () поэтому требуется небольшой финт ушами для логирования внутри wai-eventsource — gist.github.com

@qrilka:
qrilka

императивщики насилуют мозг:
Append the field value to the data buffer, then append a single U+000A LINE FEED (LF) character to the data buffer.
...
3. If the data buffer is an empty string, set the data buffer and the event type buffer to the empty string and abort these steps.
4. If the data buffer's last character is a U+000A LINE FEED (LF) character, then remove the last character from the data buffer.
Т.е. event без data (пусть и пустой) не канает за событие, но прямым текстом мы вам об этом не скажем...

@qrilka:
qrilka

wai-eventsource почему-то рвёт коннект ровно каждые 60с, при этом минимальное приложение только с ним вполне себе висит и кушать не просит...

@mikeb:
mikeb

нефиговый патчик во фрибсд закоммитили: svnweb.freebsd.org походу надо начинать отращивать яйца.

@mikeb:
mikeb

чтобы сохранять и восстанавливать FP регистры с учетом ymm регистров старыми инструкциями fxsave/fxrstor операционка должна выполнить инструкцию "xsetbv" при загрузке чтобы переключить fxsave/fxrstor на сохранение бОльшего контекста. хм...

@mikeb:
mikeb

ymm регистры требуют 32-х битного выравнивания, в то время как xmm требуют 16-х битного... :)

@mikeb:
mikeb

vaesenc инструкция оперируют на 3-х xmm регистрах, а не на двух ymm, как могло показаться. по-видимому она использует третий регистр как целевой и не портит содержимое источников.

@mikeb:
mikeb

а ни кто не подскажет, есть ли где простенький regress тест на сохранение avx регистров (ymm) при fpu lazy context switching'е? у фрибсд может где-то есть подобное?

@mikeb:
mikeb

закоммитил sse реализацию gcm (с carry-less multiplication), написаную год назад. тхео таки замучали и он прочитал интеловский copyright и сказал что хый с ним, что часть кода из white paper :)

@proton:
proton

Вопросик к знатокам. Вот есть у меня, к примеру, vds на xen'е или любой другой технологии.
Если я буду использовать там возможности mmx/sse — что произойдёт? Всё будет нормально работать?

@mikeb:
mikeb

чтобы поменять endianness в xmm регистре надо:
1) заиметь правильную маску перестановки байтов для PSHUFB:
 	.data
.align 16
.Lbswap_mask:
	.byte 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
2) загрузить её в доступный xmm регистр и выполнить PSHUFB:
	movdqu .Lbswap_mask, %xmm6
	pshufb %xmm6, %xmm0