Re: To RISC or not to RISC



yes, i am "vid" (not VID) from FASM board

Really? I might have to check my prejudices. I thought ARM was one
example of an architecture, where compilers actually produces compact
and fast code, as do compilers for x86 also.
yes, they do. but you have "bigger field" to play on, you can use
funnier constructs.

Taken from assembly point of view, coding for x86 in asm nowadays involves
checking your dword boundaries alignment, using mov eax,[esi] rather than lodsd,
nice thing you mentioned alignment. Many C programmers might be
wondering
why their "int = *(int*)data;" crashes, when data is not aligned :)

and all these optimal instruction scheduling peculiarities, which kind of
reduce neat asm tricks to somewhat same kind of code which would have
been produced by compiler anyway...
optimization in handwritten ASM is not based on timings, unrolling,
pairing etc. These things are done better by compiler than human. It is
based on one less level of abstraction, which you have in C.

But really, I'm no expert on ARM for example, just had that impression
that almost all software for ARM is coded in C, especially on mobile
phones.
yes it is. I found only 1 (!!!) program for winCE written in assembly
(besides mine).

Does assembly give you an advantage on ARM?
same as on x86

I love possibility to condition every instruction.
That's cool. Doesn't it get confusing?
sure it does. there's the fun.
i might be interesting to have size contest on ARM, like we have on
x86.

how long are you programming ARM? What OS?
I'm no expert, have been doing some preliminary coding, making my own
disassembler for ARM, to study my mobile phones OS...
what OS is it?
are you doing that disassembler as project for other people to use, or
just your own?

Although IDA would do just fine, but I think it's a good learning experience to make
a disassembler, so you really have to study the instruction encoding and such.
yes, that is best way to learn about machine you are using.
i was learning x86 asm same way...

.



Relevant Pages

  • Re: CISC vs RISC concepts -- from an assembly view
    ... program to an x86 assembly output. ... CISC CPU speed is relied on microprocessor optimizations (like 3DNow! ... capabilities and compilers. ... The point here is that RISC ...
    (comp.lang.asm.x86)
  • Re: linux-next: Tree for June 5
    ... Parent: 543e21916497be5a4005fd5820264ce1de9bd56d (x86: restore pda nodenumber field) ... This crash is not something that has been found in testing before ... - i use rather new compilers, gcc 4.2.2 most of the time. ... you'll also need the commit below for 32-bit NUMA. ...
    (Linux-Kernel)
  • Re: floating point arithmetic
    ... the following code prints "not eq" on various compilers with various ... with gcc it seems the first division is performed with x86 80bit float ... lcc-win32 and DMC compilers for x86 both give an "eq" result on your code. ... int main{ ...
    (comp.lang.c)
  • Re: F2003 complier, how far from us?
    ... standard but other vendors like Intel, ... Intel and Sun OTOH offer free Fortran compilers which you can run on ... any x86 box running linux. ... Linux is installed on IBM processors. ...
    (comp.lang.fortran)
  • Re: [Lit.] Buffer overruns
    ... >> I don't see any reason why it would be 'hard' for the compiler ... >> to generate fast code in the present context. ... > I didn't say that some compilers on some platforms ... > is not a requirement of the C standard. ...
    (sci.crypt)