to post messages and comments.

@ComradeDOS:

html5rocks.com Stream updates with SSE

@qrilka:

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

@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:

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

@mikeb:

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

@mikeb:

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

@mikeb:

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

@mikeb:

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

@mikeb:

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

@mikeb:

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

@proton:

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

@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