�ȥå� «���� �ǿ� ���» �ɵ�

�Ϥ���ƤΤˤ�

�����ΰ����դ�

2004|11|
2005|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|06|07|08|09|10|11|12|
2025|01|

ToDo:


2012-04-09

_ boost context

http://partake.in/events/313b563f-acf7-47b9-908c-ee0461b77fc0

�˹Ԥä���

@ytomino ���� boost_fcontext_align �� -16 ���Ƥ���Ȥ��襤�Ǥ����Τ��ɤ�Ǥ��������ˤ礴�ˤ���ɤ�Ǥ�����̤Ȥ��ơ�������ɤ�Ǥ륳���ɤ� ss_base �Υ��饤��ˤ����Ȥ��Ƥ��餺������ϳ��ݤ���ľ��Υ����ΰ�򥢥饤�󤹤����Ӥˤ����Ȥ��Ƥʤ����� 16B �ۤ�̵�̤��ΰ褬�������٤�̵���ʤ󤸤㡢�Ȼפä���

�ʤ󤫤����󤯤��������ɤ�����Ȥ��Υ����ɤ��ɤ�櫓�ǡ������󤯤��������ɤ�Ĥ��Ƥ�����¾�οͤΥ����ɥ꡼�ǥ��󥰤򤦤ʤ�����Τ������餷�����Ȥ����������������줿�����Ǥ��롣 github �Ȥ��˥����ɾ夲��ͤϤ����󤯤����ݥ���Ȥ�Ĥ��Ƥ����Ȥ�����! �ȥ��ɥХ�����������

x86-64 ���ɤ�ʤ����Ȥ������Ȥ��ä����ɡ� @ytomino ����ۤɤ������餹��Ф���ʤ櫓���ʤ��ơ�ñ�˰����ν礬���ܶ������Ȥ��������Ф��Ƥ������ɤ��ȻפäƤ��롣�ɤ���������֥���ɤ�Ǥ�����ն�� printf ������櫓�ǡ����� printf ���ϤäƤ��ѿ��򿮤�����ɤ��Ȼפ����Ĥޤꡢ printf ��ľ����ʸ�������������Ƥ���쥸������ %rdi = �������Ǥ��ꡢ�ե����ޥåȤˤ��ä���Τ�Ĥä���Ǥ�Ȥ������������ = %rsi �Ǥ��롣

���Τؤ�Υ����ɤ��٤��񤤤��������äơ��͸ĿͤȤ��Ƥϡ� RDI RSI RDX RCX R8 R9 �Ȥ�����Ϥʤ�Ȥʤ��Ф��Ƥ� (@ytomino �����Ŭ���˸��ä��礬���äƤ��뤳�Ȥ��ͼ��ȶä���) ��ΤΡ��ޤ�����ʤ�������Τ��Ȥʤ���Ĺ��Ū�˳Ф����櫓�ʤ��ơ��ޤ��ն�� printf ��õ���Τ��ɤ��ȻפäƤ��ޤ��� printf ��̵�����ñ�ˡ֤����ն�� GCC ���������������ɤ������������Ϥ��򤷤Ƥ���פȲ��ꤹ����ɤ���

���⤽�� x86-64 ���������ʤΤϤ���礤��䤳�����������ΰ����Ϥ� ABI �ȡ��Х��ʥ����Ȥ��Ƥ��ƥ�����֥�򸫤ˤ����Ȥ���������֥꤬������ʤ����� rex prefix �����äƤ�쥸�����ξ�̥ӥåȤǤ��äơ������Ǥʤ������Ū�ˤϤ櫓�狼��� 0x4(%esp) �Ȥ��Υ��ե��åȤ��İ����ʤ��Ȥ����� x86 ����ɤߤ䤹���� GCC �� x86 �� push/pop �ǰ������Ϥ��褦�ˤʤ륪�ץ������Ѱդ��Ƥ����Фʤ��ĤȤ��פ����餤�ˡ��������� stack �Υ��饤��Ϥ����Ȥ�äƤ��������͡��ä����١���������̣�� boost_fcontext_align �ϤѤäȸ��ɤ����Ƥ⥢�饤�󵤤�Ĥ��Ƥʤ��Ƶ��ˤʤä����ɺ���ϴط��ʤ���

�ѿ�̵���� 1 ���� n �ޤǤ��ѿ����פ���Ȥ��������ͤ����ꡣ�Ŀ�Ū�ˤ� libc �˰�¸���������Ǥʤ�ʣ������䤬�פ��Ĥ����Τǡ� libc ���������Ʋ򤱤�������ȹͤ��Ƥ���ΤΡ��ʤ��ʤ��פ��Ĥ��ʤ��ä����Ȥ����ΤϿ�����ˡ�Ϥ����ΤΡ� libc ������ getenv/setnev ������Ǽ����ʳ��β��ԤǤ�ʤ��򤬤���櫓����͡�̤���˹ͤ��Ƥ��롣

�����Ƥ��ä���ȯ������ä� iOS ���ץ꤬���̤����򤫤ä�����̾�����ƾ������Ƥ�ߤ����ʤΡ���̾�äƤ����Ƕ������Ф���������ɡ������֤��˺��Ƥ��ޤä�(�ͤε����Ȥ����Τϼ����������餷��������� 196/196 ���ä� http://www.sporcle.com/games/g/world �����ǤϤ��֤� 100/196 ���٤������Ȥ��⤦) �Ȥ����Τ⤢�뤱�ɡ���������˥�󥴥�Ȥ������ƾ�����Τ˼����Τ��Ƴ��ऺ�������򤫤ä���

�����ȸ����� putty �� coroutine ���ä��Фơ�����äƤ��ʤ���줿���������äƤ��ơ�

�Ȥ����������ä���������������˺��äݤ��Τ������˹����ʤ��Ȥ��Ȼפ���

context Ū���ͤ����������ΤϤȤˤ���������������ǥХå��ˤĤ��ƿ����ܤ˹ͤ��䤬�쥯�� boost �ä��äǡ� C/C++ �äƥ�ĤϤ���������ǥХå��Ȥ��Ȥꤹ�� API �򿿷���ɸ����Ѱդ��Ƥۤ������Ĥޤ� context ���륳���ɤʤ��ï�Ǥ�(���ʤ��Ȥ����ä��ٶ������)�񤱤�櫓�����ɡ������������Х��ץ�Ȥ��� context ������ߤ��äƤ��줬�ǥХå��Ǥ����Ǥ������äƤ�����

�ץ�����ޤϥǥХå��λ��֤�ޥ���˹ͤ���Х��äƤΤ������˥ޥȥ�Ǥ��Ļ�ǰ�ʤ��餤�ռ�����Ƥʤ����ɥХ����ǡ����ʤ��Ȥⷯ��8����ϫƯ�ʤ�8���֥����ɤ�񤯤ΤϷ��η򹯤ˤȤäƴְ㤤�ʤ��������֥��ޥ����³��Υѥե����ޥ󥹤ǥ����ɤ�񤤤���硢����2�ܤλ��֤��ǥХå���ɬ�פǤ���פäƤ��� (������ ken thompson ��) ǧ�����ᤷ�����餤�������ơ�¿���Ȥ⥪�ޥ��������ɤ�񤱤���֤äƤΤ�3�������٤������ݤǤ��ʤ�����Ȥ����и礬ɬ�פ��Ȼפ�������ʾ�Ư��ɬ�פ�����ʤ�������������꤬����ΤǤ��äơ��Ǥ���Ư���٤��Ǥʤ���

�Ȥ���;�̤ϤȤ⤫�������ʤ��Ȥ⥳���ɽ񤤤Ƥ�ʾ�λ��֤�ǥХå����񤷤Ƥ������顢�����ɰʾ�˥ǥХå��˸���ɸ��ˤ�����ޤ��Ƥϥޥ���˹ͤ����ߤ������äƤΤϺǶ���줿�������Τ褦�˷����֤����äƤ��롣�Ƕ������ˤ��줷����ĥ���Ƥʤ������餹�롣 POSIX �ƥ�ĤϤ��Τؤ�Υ��ݡ��Ȥ� windows ����٤�ޤ��äƤ�äƤ���ǧ���ǡ��������Ƕ�� pthread_setname �Ȥ������Τ����ĤΤޤˤ��Ǥ��Ƥơ� gdb �Ϥ����ͤ�����ɽ�����Ƥơ��ޤ��������ĥޥ��ˤʤäƤƴ����ǤϤ��롣 pthread_create �� stacktrace ���ݻ�����Τ�ᤤ�Ȼפ����ޤ����Τؤ�̵�뤷�� context �Ȥ����äƤ⥭������(˫����դǤϤ��뤬)�ʳ�ï��Ȥ�ʤ����������ʤ������ʤ���

ͽ�۰ʾ����줬ί�ޤäƤ��餷�������߲�Ǥ��ä��꿲�Ƥ������Ĥ�Τ��Ȥʤ����繾�����������ˤ��ꤨ�󤯤餤�󤯤ƥ५�Ĥ���ˡ����Ķ�������Ⱦ�괹���ޤ�ɬ�פ���˾Ū���������Ԥ����Ͼ��ᤷ���Τ˵�����Ϥ�����Ⱦ�괹���Ǥ����ꤷ�ơ����ʧ���ε�ư�Ȥ����Τ���Ǥ��͡�

(00:46)

_ ���⤤�������褦�˥ޥ饽����

https://www.e-run.jp/v-marathon/index.html

��3��Ⱦ�к��˻��ä������ꥢ��ޥ饽��Ǥ��롣

�ͤΥޥ饽����Ȥ����Τ�

  • ��ع��ޤ�: ���å����Ȥ��饰�ӡ��Ȥ���äƤ��ط��ǡ��빽���äƤ�Ϥ����٤��ä����ɡ�
  • 7ǯ���餤��?: �Х�����οͤ�Ͷ���ƻ��������롣���㺹�ǥ����Ƥ���ɤ��ä������֤� 70mins/10km ���餤��
  • ����: 60mins/10km ��鷺���˲��ޤ�롣����ޤ� android ��®�ٳ�ǧ���Ƥ�1���֤������ڤ�Τ�̵�����ʡ��ȻפäƤ�������ɲ��Τ���

�Ȥ��������ǡ��ޤ��פ�����������äƤʤ����ޤ������ʤ� 10km ���ä���ˤϰƳ�®���ä��ʡĤȤ������ݡ���ع��ޤǤǤ���ʤ�˻Ȥä���������­�ϳ�ȶ����褦�Ǥ����

�ʤ�����������äƤơ�¾�ˤ���ʿͤ����ʤ��ä��ΤǤ������Լ������ä��������롣����������äƤ����� 2,3km ���餤���ä�������ǵ��ꤿ���ʤäƤ��Τޤ޵��������ĤäƤ�����ư�������ä���

(01:08)

_ ���ƥ�

����ɤˤ⥦�ƥʤ��о��ʪ��ץ���������̾�ˤ�����ǰ�ʿͤ˼ڤ�Ƹ��Ƥ���

����Ϥ��������򤤤Ǥ��͡�

(02:47)

�����Υĥå���(��5��) [�ĥå��ߤ������]

_ yt [�����Ϥ��꤬�Ȥ��������ޤ����� ��ʬ�㤤���ǡ���Υ�����֥���μ���cmov���о줷�������꤫����˻���ˤĤ���..]

_ shinh [ABI �Ϥʤ� VC �ǰ㤦�äƤΤȡ� SysV ABI �ϲ��Τ� RAX �� SSE �쥸�����������äƤΤ⤢..]

_ Rui [RAX�˰�������ư���������θĿ����Ϥ��Τ�va_args��Ƥ֤Ȥ��Υ쥸��������¸���륪���С��إåɤ򸺤餹����ä�..]

_ shinh [���������ʤ�Ǥ��͡��褯�狼�餺�����äƤ��Τ��褯�狼��ޤ��͡� TCC ��ɬ�� RAX ����Ƥ�ݤ��Ǥ����ĤȤ���..]

_ Rui [XMM��16�Ĥ���󤸤�ʤ��ä��ä����Ȼפä���Ǥ��������Ϥ��ˤĤ����Τ�XMM0~7�����Ǥ����͡�����RAX�Ϥ��..]


2012-04-20

_ GSL

���� Z �� RO16 �����Ǥ����

ʷ�ϵ�Ū�� P ���������νդȤ������������ɡ��ޤ� PT �οͿ���Ʊ���ʤ����ʡ�

�ͤδ��ФǤ� Pimba �äƤ�����꤫�� T �ζ��ߤ��Ф��� P ��Ŭ�ڤ��н�򤹤�褦�ˤʤäơ� T �������褦�ʤ��ȤФä���äƤ뤫�麣�ξ����ˤʤä��Ȥ����������Ƥ��롣���ޤ� P �Ȥ������ܤ��⤷���

(01:43)


2012-04-22

_ nacl-mounts

�Ȥ�������ä��褦����

����������ʡ�

http://code.google.com/p/chromium/issues/detail?id=123876

http://code.google.com/p/naclports/source/detail?r=574

�褯�狼��󤱤� nmf �� inject �Ѥ� IRT ����Ƥ�餦�褦�˺��ʤ����Ф����Τ��ʡ�

������褯�狼��� newlib ����ư���ʤ��Ȥ��ʵ������ʤ��Ǥ�ʤ��ʤ����

�褯�狼���ΤǸŤ���Ĥ�Ȥ����Ȥ�

(06:13)

_ ���

xor ���оݤ������餵�ޤˤ��������褦�˸�����

    e20:       8b 05 08 00 04 10       mov    0x10040008,%eax
    e26:       01 d0                   add    %edx,%eax
    e28:       ba 00 00 00 00          mov    $0x0,%edx
    e2d:       11 ca                   adc    %ecx,%edx
    e2f:       8b 08                   mov    (%eax),%ecx
    e31:       83 c0 04                add    $0x4,%eax
    e34:       89 8d 00 ff ff ff       mov    %ecx,-0x100(%ebp)
    e3a:       90                      nop
    e3b:       90                      nop
    e3c:       90                      nop
    e3d:       90                      nop
    e3e:       90                      nop
    e3f:       90                      nop
    e40:       89 95 04 ff ff ff       mov    %edx,-0xfc(%ebp)
    e46:       8b 08                   mov    (%eax),%ecx
    e48:       b8 ff ff ff ff          mov    $0xffffffff,%eax
    e4d:       ba ff ff ff ff          mov    $0xffffffff,%edx
    e52:       31 c1                   xor    %eax,%ecx
    e54:       31 d1                   xor    %edx,%ecx
    e56:       8b 05 d8 c6 05 10       mov    0x1005c6d8,%eax
    e5c:       90                      nop
    e5d:       90                      nop

(06:13)

_ ��������

long long �����������

3LL<<-1 �Ȥ��Ρ�����ͤ� long long shift �������������Ȥ����� GCC �Ȱ��פ��Ƥʤ���

long long __ashldi3(long long a, int b)
{
    b &= 63;
#ifdef __TINYC__

�Ȥ����н�Ǥ��롣

long long �� ~ �Ȥ����� xor �Ǥ������ʤ��Ȥ������Ƥ����� �ɤ��� xor ��������ʤ��ƥ쥸������­��ʤ��ʤäơ� long long �⤦����ܤΥ쥸��������ݤ�����˰���ܤΥ쥸��������������֡� ��������äƤ��Ĥ� vstack ���Ѥޤ�Ƥ�ȵ�����Τ��ʡ��档

               /* allocate second register */
               r2 = get_reg(rc2);
               printf("%s r=%d r2=%d\n", r==r2?"oops":"OK",vtop[-1].r,r2);

�Ȥ��� oops �ϽФ��㤤���󵤤����롣

���㡼�ʤ��Τǡ� __xordi3 �Ȥ���

long long __xordi3(long long u, long long v)
{
    DWunion uu, vv, ww;

    uu.ll = u;
    vv.ll = v;
    ww.s.high = uu.s.high ^ vv.s.high;
    ww.s.low = uu.s.low ^ vv.s.low;

    return ww.ll;
}

�Ȥ���������������Ƥ�äƤ����Ƥ֤��Ȥˤ����� �ġ��� TCC �� long long �� x64 �ʳ���ư���Ƥ�Τ��Ի׵Ĥ����뤷�� git blame ���Ƥ�ï�����������äƤʤ������꤫�顢���֤� fabrice �ʳ�ï�����򤷤Ƥʤ��������롣 ���ä��Ĥ��������ؿ����������Ф����Τˡ�

���Ȥ��ͥ����ɤ���������ɡ� libtcc1.a ���ɤ�����Υ���ܥ��褬�����������Ȥ���������ܥ뤬������褵��Ƥʤ��� �����Ƥ褯�狼��ʤ��� ���㡼�ʤ��Τ� tcc ���� libtcc1.a ���󥯤��Ƥ�äơ� __divdi3 �Ȥ����Τؤ������ i686-nacl-tccsyms.tab �ˤĤä���Ǥ��Ȥ����ӵ��Dz�衣

(08:06)


2012-04-24

_ �Ż��Ǥ���Ҥ�

http://d.hatena.ne.jp/nakamurabashi/20100110/1263135584

����Ϥ��ꤽ�����ä��ʤ��Ȼפä���

SC2 ���˥ߥ˥ޥå׸���Ƥ�ͤ������櫓�ǡ��ץ������ޡ���30�Ͳ᤮��������ǿꤨ�Ƥ��äƤΤ�Ƴ����������ä���ʤ��Ȥ�

(00:21)


2012-04-25

_ �Х��ޥ�

���錄�褦��

�ͥ��Х�

�᥿�᥿�����������ʤ��ȻפäƤ����ɡ� ̡����Ǥ����ǽ����Τ��٥��ȤǤ�����餻�Ƥ�������! �Ȥ����äƤ��θ�Х��ޥ��Τ⽪���äƤ����Τ� �ޤ����ʸ���Ū���ɤ��ʤ��Ȥ����äʤ󤫤ʡ� ��������Х��ޥ�����⽩���饢�˥�3���Ȥ��ʤΤ���?

(00:42)


2012-04-29

_ �Ƕ�δؿ�

�Ƕ�� syscall �Ȥ� libc �Ȥ����������ʴؿ������ä���� �Ȥ������Τ�Ŭ���˽񤭤Ϥ���Ƥߤ�

http://shinh.skr.jp/h/?RecentFunctions

(00:22)

_ ���ƥ�

���Ȥ�������������������ä���

���򤫤ä��Τǡ�8�䤯�餤��2��󤷤��󤸤�ʤ����������������ȸ��Ƥ������������

�������򤫤ä��Τ����ɡ��ʤ����ɤ����򤫤ä����Ȥ����ȡ���̣���狼��󤯤����򤫤ä����Ȥ��������ʤ����Ǥ�Dz��Ǥ���̯���Ȼפä�����ͳ��Ʊ��������̣���狼��󤫤顢�ʤΤǤ��ΰ㤤�Ϥʤ�ʤΤ��Ȥ�����

�Dz�ϵͤ���ߤ����ǡ��ޥ���ˤ�äƤ�Τ˥��㥰�ݤ����Ȥ��뤫�饷�塼������򤤡�����ʤ��ơ�ñ�˥��㥰�ݤ��������㤦�Τ��ʡ�

�����Ĥ��η����֤���륷���󤬤������褯�Ǥ��Ƥ�Ȥ����Τ��������ä��Τǡ��Dz�ǤϷ����֤���륷���󤬤ʤ��Τ������Ȥ����ä⤢�롣��Ʈ���γ����Ф�Ȥ����ȼ֤������餷��������

(02:28)

_ Qt EWS

https://bugs.webkit.org/show_bug.cgi?id=85153

���ԥͥ����äƤ��Ȥ���?

Qt �Ȥ����� non Mac port �� WebKit �Ǥ�����̱�ʤΤǡ� EWS (early warning system ���ä�) �ΥܥåȤ��֤��ʤäƤƤⵤ�ˤ����˥��ߥåȤ����㤦�ͤ�¿���ơ�������ᤷ����Ū�ʡ�

(18:18)

�����Υĥå���(��2��) [�ĥå��ߤ������]

_ �̤ꤹ���� [���ƥʤ�����Ū�����򤤱�Ф����˸����Ƥ����Ǥ��͡����Ȥʤʤߤ�����ä����������롣]

_ shinh [������ȵ��������餷���ä��Ǥ��͡����Ⱥǽ�Τ䤱�ˤ��Ĥ������λҡ����ˡߡ߻��äƤ��äƤ�Ĥ⡣]


2012-04-30

_ uselessness

�̤˲ˤȤ����櫓�Ǥ�ʤ��Τ�����(�ˤǤ��礦���ʤ��Ȥ�����̣����Ƭ��)��

http://georgebest1969.typepad.jp/

��ܤ����ɤ�Ǥ����顢�����������򤤤ʡ��ȡ����ޤ���𤬤狼��ʤ�����Ԥ��ɤ������Ȥ����Τⶽ̣����������ɡ����̤˶����ᤤ���ä����򤤤ʤ��ȡ�

http://georgebest1969.typepad.jp/blog/2012/04/%E3%82%A4%E3%82%AF%E3%83%A1%E3%83%B3%E3%81%A8%E4%BB%96%E8%80%85%E3%81%AE%E7%9B%AE.html

�Ρ֤ߤ������uselessness�ؤμ��Ф����ڤ��פȤ��������ʤ���

(22:58)


�� 2012ǯ
4��
��
�� �� �� �� �� �� ��
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
1.shinh(2012-04-29 17:30) 2.�̤ꤹ����(2012-04-29 11:54) 3.Rui(2012-04-10 03:10)
search / home / index

���ƥ�󥯥ե꡼�Ǥ��� �������Ҥϼ�ͳ�˻��Ѥ��Ƥ��������ƹ����ޤ��� ����¾�Τ�Τ�GPL�����Ǥ���Ф�������Ѥ˴ؤ���ʸ��ϸ����ޤ��� �ʤˤ�����в����᡼�륢�ɥ쥹�ء�

shinichiro.hamaji _at_ gmail.com / shinichiro.h