mirror of https://github.com/ipxe/ipxe.git
Added potentially required "\n\t" on the end of asm_code_str
parent
190276a8b6
commit
103aff3ae2
|
@ -220,26 +220,13 @@ virt_to_user ( void * virtual ) {
|
||||||
"pushw %%fs\n\t" \
|
"pushw %%fs\n\t" \
|
||||||
"pushw %%es\n\t" \
|
"pushw %%es\n\t" \
|
||||||
"pushw %%ds\n\t" \
|
"pushw %%ds\n\t" \
|
||||||
asm_code_str \
|
asm_code_str "\n\t" \
|
||||||
"popw %%ds\n\t" \
|
"popw %%ds\n\t" \
|
||||||
"popw %%es\n\t" \
|
"popw %%es\n\t" \
|
||||||
"popw %%fs\n\t" \
|
"popw %%fs\n\t" \
|
||||||
"popw %%gs\n\t" \
|
"popw %%gs\n\t" \
|
||||||
".code16gcc\n\t"
|
".code16gcc\n\t"
|
||||||
|
|
||||||
/* REAL_EXEC: execute some inline assembly code in a way that matches
|
|
||||||
* the interface of librm
|
|
||||||
*/
|
|
||||||
#define OUT_CONSTRAINTS(...) __VA_ARGS__
|
|
||||||
#define IN_CONSTRAINTS(...) __VA_ARGS__
|
|
||||||
#define CLOBBER(...) __VA_ARGS__
|
|
||||||
#define REAL_EXEC( name, asm_code_str, num_out_constraints, \
|
|
||||||
out_constraints, in_constraints, clobber ) do { \
|
|
||||||
__asm__ __volatile__ ( \
|
|
||||||
REAL_CODE ( asm_code_str ) \
|
|
||||||
: out_constraints : in_constraints : clobber ); \
|
|
||||||
} while ( 0 )
|
|
||||||
|
|
||||||
#endif /* ASSEMBLY */
|
#endif /* ASSEMBLY */
|
||||||
|
|
||||||
#endif /* LIBKIR_H */
|
#endif /* LIBKIR_H */
|
||||||
|
|
Loading…
Reference in New Issue