tcg: Rename tcg-target.c to tcg-target.inc.c
Rename the per-architecture tcg-target.c files to tcg-target.inc.c. This makes it clearer that they are not intended to be standalone C files, but are instead #included into another source file. Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Message-Id: <1456238983-10160-2-git-send-email-peter.maydell@linaro.org> Signed-off-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
parent
d2dc4069e0
commit
ce15110981
@ -385,7 +385,7 @@ ops (see @code{target-i386/translate.c}). Some optimizations can be
|
||||
performed at this stage, including liveness analysis and trivial
|
||||
constant expression evaluation. TCG ops are then implemented in the
|
||||
host CPU back end, also known as TCG target (see
|
||||
@code{tcg/i386/tcg-target.c}). For more information, please take a
|
||||
@code{tcg/i386/tcg-target.inc.c}). For more information, please take a
|
||||
look at @code{tcg/README}.
|
||||
|
||||
@node Condition code optimisations
|
||||
|
@ -460,8 +460,9 @@ function tcg_gen_xxx(args).
|
||||
|
||||
4) Backend
|
||||
|
||||
tcg-target.h contains the target specific definitions. tcg-target.c
|
||||
contains the target specific code.
|
||||
tcg-target.h contains the target specific definitions. tcg-target.inc.c
|
||||
contains the target specific code; it is #included by tcg/tcg.c, rather
|
||||
than being a standalone C file.
|
||||
|
||||
4.1) Assumptions
|
||||
|
||||
|
@ -62,7 +62,8 @@
|
||||
#include "elf.h"
|
||||
#include "exec/log.h"
|
||||
|
||||
/* Forward declarations for functions declared in tcg-target.c and used here. */
|
||||
/* Forward declarations for functions declared in tcg-target.inc.c and
|
||||
used here. */
|
||||
static void tcg_target_init(TCGContext *s);
|
||||
static void tcg_target_qemu_prologue(TCGContext *s);
|
||||
static void patch_reloc(tcg_insn_unit *code_ptr, int type,
|
||||
@ -96,7 +97,7 @@ static void tcg_register_jit_int(void *buf, size_t size,
|
||||
size_t debug_frame_size)
|
||||
__attribute__((unused));
|
||||
|
||||
/* Forward declarations for functions declared and used in tcg-target.c. */
|
||||
/* Forward declarations for functions declared and used in tcg-target.inc.c. */
|
||||
static int target_parse_constraint(TCGArgConstraint *ct, const char **pct_str);
|
||||
static void tcg_out_ld(TCGContext *s, TCGType type, TCGReg ret, TCGReg arg1,
|
||||
intptr_t arg2);
|
||||
@ -250,7 +251,7 @@ TCGLabel *gen_new_label(void)
|
||||
return l;
|
||||
}
|
||||
|
||||
#include "tcg-target.c"
|
||||
#include "tcg-target.inc.c"
|
||||
|
||||
/* pool based memory allocation */
|
||||
void *tcg_malloc_internal(TCGContext *s, int size)
|
||||
|
@ -568,7 +568,7 @@ struct TCGContext {
|
||||
|
||||
TBContext tb_ctx;
|
||||
|
||||
/* The TCGBackendData structure is private to tcg-target.c. */
|
||||
/* The TCGBackendData structure is private to tcg-target.inc.c. */
|
||||
struct TCGBackendData *be;
|
||||
|
||||
TCGTempSet free_temps[TCG_TYPE_COUNT * 2];
|
||||
|
@ -21,7 +21,7 @@ This is what TCI (Tiny Code Interpreter) does.
|
||||
2) Implementation
|
||||
|
||||
Like each TCG host frontend, TCI implements the code generator in
|
||||
tcg-target.c, tcg-target.h. Both files are in directory tcg/tci.
|
||||
tcg-target.inc.c, tcg-target.h. Both files are in directory tcg/tci.
|
||||
|
||||
The additional file tcg/tci.c adds the interpreter.
|
||||
|
||||
@ -123,7 +123,7 @@ u1 = linux-user-test works
|
||||
would also improve speed for hosts which support byte alignment).
|
||||
|
||||
* A better disassembler for the pseudo code would be nice (a very primitive
|
||||
disassembler is included in tcg-target.c).
|
||||
disassembler is included in tcg-target.inc.c).
|
||||
|
||||
* It might be useful to have a runtime option which selects the native TCG
|
||||
or TCI, so QEMU would have to include two TCGs. Today, selecting TCI
|
||||
|
Loading…
Reference in New Issue
Block a user