Article: AMD's Mobile Strategy
By: Michael S (already5chosen.delete@this.yahoo.com), December 21, 2011 3:49 am
Room: Moderated Discussions
Exophase (exophase@gmail.com) on 12/20/11 wrote:
---------------------------
>Linus Torvalds (torvalds@linux-foundation.org) on 12/20/11 wrote:
>---------------------------
>>Pretty much every single large immediate I ever see is
>>an address that has been resolved by the linker.
>>
>>It sounds like you've worked with machines that simply
>>cannot do them for so long that you don't even realize
>>that they are immediates.
>>
>>So of course you never see them - you think they are data
>>in a separate table, and you think they don't exist.
>>
>>Linus
>
>Well that's just not true, because I've programmed a lot of x86 assembly in addition
>to various RISCs. I think I've done more x86 than anything else, although I've coded a lot of ARM too.
>
>Of course, I also spend about as much time compiling for both, but admittedly I
>don't look at what the compilers generate nearly as much.
>
>Now, give me real data for a decent range of real world programs.
Asm coding (at least in my experience) tends to be relatively small performance-critical modules, typically coded in somewhat-generic manner with input/output delivered through pointers.
Such modules tend to not use globals at all and to use static far rarer than the rest of application.
Did you ever code the whole big application in ASM? ;-)
Linus Torvalds (torvalds@linux-foundation.org) on 12/12/11 wrote:
---------------------------
>
>It's like innovating by writing assembly code. You're
>just crazy if you do that. The end result isn't going to
>be "innovative" - it's just going to be clunky and stupid.
>Because you innovated at the wrong level.
>
>
Linus Torvalds (torvalds@linux-foundation.org) on 12/12/11 wrote:
---------------------------
>
>The whole "manual placement" is a wet dream of autistic
>people who think they are smart enough to do it, but are
>actually not smart at all. Good at details, not good at
>real life.
>
>Linus
---------------------------
>Linus Torvalds (torvalds@linux-foundation.org) on 12/20/11 wrote:
>---------------------------
>>Pretty much every single large immediate I ever see is
>>an address that has been resolved by the linker.
>>
>>It sounds like you've worked with machines that simply
>>cannot do them for so long that you don't even realize
>>that they are immediates.
>>
>>So of course you never see them - you think they are data
>>in a separate table, and you think they don't exist.
>>
>>Linus
>
>Well that's just not true, because I've programmed a lot of x86 assembly in addition
>to various RISCs. I think I've done more x86 than anything else, although I've coded a lot of ARM too.
>
>Of course, I also spend about as much time compiling for both, but admittedly I
>don't look at what the compilers generate nearly as much.
>
>Now, give me real data for a decent range of real world programs.
Asm coding (at least in my experience) tends to be relatively small performance-critical modules, typically coded in somewhat-generic manner with input/output delivered through pointers.
Such modules tend to not use globals at all and to use static far rarer than the rest of application.
Did you ever code the whole big application in ASM? ;-)
Linus Torvalds (torvalds@linux-foundation.org) on 12/12/11 wrote:
---------------------------
>
>It's like innovating by writing assembly code. You're
>just crazy if you do that. The end result isn't going to
>be "innovative" - it's just going to be clunky and stupid.
>Because you innovated at the wrong level.
>
>
Linus Torvalds (torvalds@linux-foundation.org) on 12/12/11 wrote:
---------------------------
>
>The whole "manual placement" is a wet dream of autistic
>people who think they are smart enough to do it, but are
>actually not smart at all. Good at details, not good at
>real life.
>
>Linus