qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: qemu-devel@nongnu.org, quintela@redhat.com
Subject: [Qemu-devel] Re: [PATCH 16/28] migration: use global variable directly
Date: Thu, 24 Feb 2011 08:58:04 +0100	[thread overview]
Message-ID: <4D660F8C.3030406@redhat.com> (raw)
In-Reply-To: <m3k4gphps1.fsf@blackfin.pond.sub.org>

On 02/24/2011 08:09 AM, Markus Armbruster wrote:
> For completeness: a local variable may be necessary to convince the
> optimizer that the value doesn't change.  Cases where this matters
> exist, but they're rare.

In particular, for non-pointers they're nonexistent if the variable is 
static and you never use &current_migration, i.e. if the variable 
doesn't escape.

If the above conditions are satisfied and you have a loop that never 
"leaves" the C file, you could even see the compiler keep the variable 
in a register for the whole duration of the loop and store the modified 
change after the loop.

Paolo

  reply	other threads:[~2011-02-24  7:58 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-23 21:47 [Qemu-devel] [PATCH v2 00/28] Refactor and cleanup migration code Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 01/28] migration: Make *start_outgoing_migration return FdMigrationState Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 02/28] migration: Use FdMigrationState instead of MigrationState when possible Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 03/28] migration: Fold MigrationState into FdMigrationState Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 04/28] migration: Rename FdMigrationState MigrationState Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 05/28] migration: Refactor MigrationState creation Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 06/28] migration: Make all posible migration functions static Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 07/28] migration: move migrate_create_state to do_migrate Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 08/28] migration: Check that migration is active before cancel it Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 09/28] migration: Introduce MIG_STATE_NONE Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 10/28] migration: Refactor and simplify error checking in migrate_fd_put_ready Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 11/28] migration: Introduce migrate_fd_completed() for consistenncy Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 12/28] migration: Our release callback was just free Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 13/28] migration: Remove get_status() accessor Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 14/28] migration: Remove migration cancel() callback Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 15/28] migration: Move exported functions to the end of the file Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 16/28] migration: use global variable directly Juan Quintela
2011-02-23 22:18   ` Anthony Liguori
2011-02-23 22:46     ` [Qemu-devel] " Juan Quintela
2011-02-23 23:04       ` Anthony Liguori
2011-02-23 23:07         ` Juan Quintela
2011-02-24  7:09         ` Markus Armbruster
2011-02-24  7:58           ` Paolo Bonzini [this message]
2011-02-23 21:47 ` [Qemu-devel] [PATCH 17/28] migration: another case of global variable assigned to local one Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 18/28] migration: convert current_migration from pointer to struct Juan Quintela
2011-02-23 22:19   ` Anthony Liguori
2011-02-23 22:50     ` [Qemu-devel] " Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 19/28] migration: Use bandwidth_limit directly Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 20/28] migration: Export a function that tells if the migration has finished correctly Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 21/28] migration: Make state definitions local Juan Quintela
2011-02-24  4:12   ` Yoshiaki Tamura
2011-02-24  9:01     ` [Qemu-devel] " Juan Quintela
2011-02-24  9:16       ` Yoshiaki Tamura
2011-02-23 21:47 ` [Qemu-devel] [PATCH 22/28] savevm: avoid qemu_savevm_state_iteate() to return 1 when qemu file has error Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 23/28] migration: add error handling to migrate_fd_put_notify() Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 24/28] migration: Don't use callback on file defining it Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 25/28] migration: propagate error correctly Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 26/28] migration: qemu_savevm_iterate has three return values Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 27/28] migration: If there is one error, it makes no sense to continue Juan Quintela
2011-02-23 21:47 ` [Qemu-devel] [PATCH 28/28] migration: make migration-{tcp, unix} consistent Juan Quintela
2011-04-02  7:54 ` [Qemu-devel] [PATCH v2 00/28] Refactor and cleanup migration code Yoshiaki Tamura

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=4D660F8C.3030406@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=armbru@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).