07 Feb, 2008

1 commit

  • Actual code let compiler generates idiv instruction on x86.

    Using a right shift is OK here and readable as well.

    Before patch
    10: 57 push %edi
    11: 56 push %esi
    12: 89 d6 mov %edx,%esi
    14: 53 push %ebx
    15: 89 c3 mov %eax,%ebx
    17: eb 22 jmp 3b
    19: 89 f0 mov %esi,%eax
    1b: ba 02 00 00 00 mov $0x2,%edx
    20: 29 d8 sub %ebx,%eax
    22: 89 d7 mov %edx,%edi
    24: c1 f8 03 sar $0x3,%eax
    27: 99 cltd
    28: f7 ff idiv %edi
    2a: 8d 04 c3 lea (%ebx,%eax,8),%eax
    2d: 39 08 cmp %ecx,(%eax)
    ...

    After patch

    00000010 :
    10: 53 push %ebx
    11: 89 c3 mov %eax,%ebx
    13: eb 18 jmp 2d
    15: 89 d0 mov %edx,%eax
    17: 29 d8 sub %ebx,%eax
    19: c1 f8 04 sar $0x4,%eax
    1c: 8d 04 c3 lea (%ebx,%eax,8),%eax
    1f: 39 08 cmp %ecx,(%eax)
    ...

    Signed-off-by: Eric Dumazet
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Eric Dumazet
     

01 Jul, 2006

1 commit


10 Feb, 2006

1 commit


31 Oct, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds