Revision 1235fc06
b/exec-all.h | ||
---|---|---|
216 | 216 |
{ |
217 | 217 |
/* patch the branch destination */ |
218 | 218 |
*(uint32_t *)jmp_addr = addr - (jmp_addr + 4); |
219 |
/* no need to flush icache explicitely */
|
|
219 |
/* no need to flush icache explicitly */ |
|
220 | 220 |
} |
221 | 221 |
#elif defined(__arm__) |
222 | 222 |
static inline void tb_set_jmp_target1(unsigned long jmp_addr, unsigned long addr) |
b/hw/alpha_palcode.c | ||
---|---|---|
55 | 55 |
}; |
56 | 56 |
|
57 | 57 |
#if 0 |
58 |
/* One must explicitely check that the TB is valid and the FOE bit is reset */
|
|
58 |
/* One must explicitly check that the TB is valid and the FOE bit is reset */ |
|
59 | 59 |
static void update_itb (void) |
60 | 60 |
{ |
61 | 61 |
/* This writes into a temp register, not the actual one */ |
b/hw/integratorcp.c | ||
---|---|---|
494 | 494 |
} |
495 | 495 |
ram_offset = qemu_ram_alloc(ram_size); |
496 | 496 |
/* ??? On a real system the first 1Mb is mapped as SSRAM or boot flash. */ |
497 |
/* ??? RAM shoud repeat to fill physical memory space. */ |
|
497 |
/* ??? RAM should repeat to fill physical memory space. */
|
|
498 | 498 |
/* SDRAM at address zero*/ |
499 | 499 |
cpu_register_physical_memory(0, ram_size, ram_offset | IO_MEM_RAM); |
500 | 500 |
/* And again at address 0x80000000 */ |
b/hw/realview.c | ||
---|---|---|
64 | 64 |
} |
65 | 65 |
} |
66 | 66 |
|
67 |
/* ??? RAM shoud repeat to fill physical memory space. */ |
|
67 |
/* ??? RAM should repeat to fill physical memory space. */
|
|
68 | 68 |
/* SDRAM at address zero. */ |
69 | 69 |
cpu_register_physical_memory(0, ram_size, IO_MEM_RAM); |
70 | 70 |
|
b/hw/scsi-disk.c | ||
---|---|---|
662 | 662 |
case 0x46: |
663 | 663 |
DPRINTF("Get Configuration (rt %d, maxlen %d)\n", buf[1] & 3, len); |
664 | 664 |
memset(outbuf, 0, 8); |
665 |
/* ??? This shoud probably return much more information. For now |
|
665 |
/* ??? This should probably return much more information. For now
|
|
666 | 666 |
just return the basic header indicating the CD-ROM profile. */ |
667 | 667 |
outbuf[7] = 8; // CD-ROM |
668 | 668 |
r->buf_len = 8; |
b/hw/versatilepb.c | ||
---|---|---|
182 | 182 |
fprintf(stderr, "Unable to find CPU definition\n"); |
183 | 183 |
exit(1); |
184 | 184 |
} |
185 |
/* ??? RAM shoud repeat to fill physical memory space. */ |
|
185 |
/* ??? RAM should repeat to fill physical memory space. */
|
|
186 | 186 |
/* SDRAM at address zero. */ |
187 | 187 |
cpu_register_physical_memory(0, ram_size, IO_MEM_RAM); |
188 | 188 |
|
b/linux-user/path.c | ||
---|---|---|
82 | 82 |
return root; |
83 | 83 |
} |
84 | 84 |
|
85 |
/* This needs to be done after tree is stabalized (ie. no more reallocs!). */
|
|
85 |
/* This needs to be done after tree is stabilized (ie. no more reallocs!). */
|
|
86 | 86 |
static void set_parents(struct pathelem *child, struct pathelem *parent) |
87 | 87 |
{ |
88 | 88 |
unsigned int i; |
b/linux-user/qemu.h | ||
---|---|---|
388 | 388 |
} |
389 | 389 |
|
390 | 390 |
/* Unlock an area of guest memory. The first LEN bytes must be |
391 |
flushed back to guest memory. host_ptr = NULL is explicitely
|
|
391 |
flushed back to guest memory. host_ptr = NULL is explicitly |
|
392 | 392 |
allowed and does nothing. */ |
393 | 393 |
static inline void unlock_user(void *host_ptr, abi_ulong guest_addr, |
394 | 394 |
long len) |
b/qemu-tech.texi | ||
---|---|---|
277 | 277 |
qemu-fast system emulator. It requires a patched Linux kernel to work |
278 | 278 |
(you cannot launch the same kernel on your PC), but the patches are |
279 | 279 |
really small. As it is a PC virtualizer (no emulation is done except |
280 |
for some priveledged instructions), it has the potential of being
|
|
280 |
for some privileged instructions), it has the potential of being
|
|
281 | 281 |
faster than QEMU. The downside is that a complicated (and potentially |
282 | 282 |
unsafe) host kernel patch is needed. |
283 | 283 |
|
... | ... | |
334 | 334 |
result (called @code{CC_DST}) and the type of operation (called |
335 | 335 |
@code{CC_OP}). |
336 | 336 |
|
337 |
@code{CC_OP} is almost never explicitely set in the generated code
|
|
337 |
@code{CC_OP} is almost never explicitly set in the generated code |
|
338 | 338 |
because it is known at translation time. |
339 | 339 |
|
340 | 340 |
In order to increase performances, a backward pass is performed on the |
b/target-i386/cpu.h | ||
---|---|---|
351 | 351 |
|
352 | 352 |
enum { |
353 | 353 |
CC_OP_DYNAMIC, /* must use dynamic code to get cc_op */ |
354 |
CC_OP_EFLAGS, /* all cc are explicitely computed, CC_SRC = flags */
|
|
354 |
CC_OP_EFLAGS, /* all cc are explicitly computed, CC_SRC = flags */ |
|
355 | 355 |
|
356 | 356 |
CC_OP_MULB, /* modify all flags, C, O = (CC_SRC != 0) */ |
357 | 357 |
CC_OP_MULW, |
b/target-i386/op_helper.c | ||
---|---|---|
689 | 689 |
} |
690 | 690 |
dpl = (e2 >> DESC_DPL_SHIFT) & 3; |
691 | 691 |
cpl = env->hflags & HF_CPL_MASK; |
692 |
/* check privledge if software int */
|
|
692 |
/* check privilege if software int */
|
|
693 | 693 |
if (is_int && dpl < cpl) |
694 | 694 |
raise_exception_err(EXCP0D_GPF, intno * 8 + 2); |
695 | 695 |
/* check valid bit */ |
... | ... | |
900 | 900 |
} |
901 | 901 |
dpl = (e2 >> DESC_DPL_SHIFT) & 3; |
902 | 902 |
cpl = env->hflags & HF_CPL_MASK; |
903 |
/* check privledge if software int */
|
|
903 |
/* check privilege if software int */
|
|
904 | 904 |
if (is_int && dpl < cpl) |
905 | 905 |
raise_exception_err(EXCP0D_GPF, intno * 16 + 2); |
906 | 906 |
/* check valid bit */ |
... | ... | |
1166 | 1166 |
|
1167 | 1167 |
dpl = (e2 >> DESC_DPL_SHIFT) & 3; |
1168 | 1168 |
cpl = env->hflags & HF_CPL_MASK; |
1169 |
/* check privledge if software int */
|
|
1169 |
/* check privilege if software int */
|
|
1170 | 1170 |
if (is_int && dpl < cpl) |
1171 | 1171 |
raise_exception_err(EXCP0D_GPF, (intno << shift) + 2); |
1172 | 1172 |
|
... | ... | |
2698 | 2698 |
sp += addend; |
2699 | 2699 |
if (rpl == cpl && (!(env->hflags & HF_CS64_MASK) || |
2700 | 2700 |
((env->hflags & HF_CS64_MASK) && !is_iret))) { |
2701 |
/* return to same priledge level */
|
|
2701 |
/* return to same privilege level */
|
|
2702 | 2702 |
cpu_x86_load_seg_cache(env, R_CS, new_cs, |
2703 | 2703 |
get_seg_base(e1, e2), |
2704 | 2704 |
get_seg_limit(e1, e2), |
b/target-ppc/translate.c | ||
---|---|---|
287 | 287 |
|
288 | 288 |
typedef struct opcode_t { |
289 | 289 |
unsigned char opc1, opc2, opc3; |
290 |
#if HOST_LONG_BITS == 64 /* Explicitely align to 64 bits */
|
|
290 |
#if HOST_LONG_BITS == 64 /* Explicitly align to 64 bits */ |
|
291 | 291 |
unsigned char pad[5]; |
292 | 292 |
#else |
293 | 293 |
unsigned char pad[1]; |
b/tcg/tcg.c | ||
---|---|---|
1406 | 1406 |
propagation */ |
1407 | 1407 |
tcg_out_movi(s, ots->type, ots->reg, val); |
1408 | 1408 |
} else { |
1409 |
/* The movi is not explicitely generated here */
|
|
1409 |
/* The movi is not explicitly generated here */ |
|
1410 | 1410 |
if (ots->val_type == TEMP_VAL_REG) |
1411 | 1411 |
s->reg_to_temp[ots->reg] = -1; |
1412 | 1412 |
ots->val_type = TEMP_VAL_CONST; |
Also available in: Unified diff