All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sofiane Akermoun <akersof@gmail.com>
To: Hendrik Visage <hvjunk@gmail.com>
Cc: horseriver <horserivers@gmail.com>, linux-assembly@vger.kernel.org
Subject: Re: different asm code
Date: Mon, 18 Feb 2013 16:54:19 +0100	[thread overview]
Message-ID: <CAN0_x-LUExqeQTyKGSmB0pRMxBDNVZF3Qgd9qiDT2CQeke6XGg@mail.gmail.com> (raw)
In-Reply-To: <CADtGFvkFR_rGnC18Z+yYFObtVOAQPXo1KrrNfT1_kOb-3Zg4XQ@mail.gmail.com>

a nice trick too:
push 0
pop register

We could start writing some metamorphic code to zeroed something :)

Horseriver you really have to search a bit yourself before spamming
this mailling list. I would mean your are sometimes asking question
that could be answerd in few seconds by google.
An advice if you need quick answers for short questions there are
really good irc chan for assembler stuff, freeonde as a good one #asm
and efnet too like #assembly, #win32asm or #asm, you have to try.

for you information, compiler and assembler can choose what is the
best way to generate code, loop etc. If he find something redundant he
can try to optimize it. sometimes he prefers to xor a register to
zeroed it, sometimes he prefers to mov 0 into the register.
You have to check optimization option of your assembler/compiler.

but if you really have something weird or interesting as wrote Hendrik
Visage paste code here.

regards,

Sofiane Akermoun

2013/2/18 Hendrik Visage <hvjunk@gmail.com>:
> On Mon, Feb 18, 2013 at 7:06 AM, horseriver <horserivers@gmail.com> wrote:
>> hi:)
>>
>>   I have compiled a .S file ,using command gcc -c x.S -o x.
>>   Then I use objdump to look up its asm code, even find that some code is not the
>>   same as that .S file , more important is , some code in origin  .S file has disappear .
>>
>>   what is about the reason ? If it is due to version , why some code chould get lost after compile?
>
> Give examples please.
>
> There are several "similar"/equivalent code/instructions that the
> assembler could chose from.
>
> Ie. to zero a register, you could
> 1) mov REGISTER,0
> 2) xor REGISTER, REGISTER
> 3) mv REGISTER,g0 (on a SPARC where g0 is always zero)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-assembly" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Sofiane AKERMOUN
akersof@gmail.com

      reply	other threads:[~2013-02-18 15:54 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-18  5:06 different asm code horseriver
2013-02-18 15:22 ` Hendrik Visage
2013-02-18 15:54   ` Sofiane Akermoun [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAN0_x-LUExqeQTyKGSmB0pRMxBDNVZF3Qgd9qiDT2CQeke6XGg@mail.gmail.com \
    --to=akersof@gmail.com \
    --cc=horserivers@gmail.com \
    --cc=hvjunk@gmail.com \
    --cc=linux-assembly@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.