+2003-09-28 Richard Henderson <rth@redhat.com>
+
+ * stmt.c (expand_asm_operands): Take a location_t, instead of
+ individual file and line.
+ * c-typeck.c (c_expand_asm_operands): Likewise.
+ * tree.h (expand_asm_operands): Update decl.
+ * c-common.h (c_expand_asm_operands): Likewise.
+ * c-semantics (genrtl_asm_stmt): Update call.
+
2003-09-28 Philip Blundell <philb@gnu.org>
* config/arm/arm.c (legitimize_pic_address): Check
+2003-09-28 Richard Henderson <rth@redhat.com>
+
+ * trans.c (tree_transform): Update call to expand_asm_operands.
+
2003-09-21 Richard Henderson <rth@redhat.com>
* trans.c, utils.c: Revert.
gnu_orig_out_list = nreverse (gnu_orig_out_list);
expand_asm_operands (gnu_template, gnu_output_list, gnu_input_list,
gnu_clobber_list, Is_Asm_Volatile (gnat_node),
- input_filename, input_line);
+ input_location);
/* Copy all the intermediate outputs into the specified outputs. */
for (; gnu_output_list;
initializers and cleanups. */
#define COMPOUND_STMT_BODY_BLOCK(NODE) TREE_LANG_FLAG_3 (NODE)
-extern void c_expand_asm_operands (tree, tree, tree, tree, int, const char *, int);
+extern void c_expand_asm_operands (tree, tree, tree, tree, int, location_t);
/* These functions must be defined by each front-end which implements
a variant of the C language. They are used in c-common.c. */
else
c_expand_asm_operands (string, output_operands, input_operands,
clobbers, cv_qualifier != NULL_TREE,
- input_filename, input_line);
+ input_location);
}
/* Generate the RTL for a CLEANUP_STMT. */
void
c_expand_asm_operands (tree string, tree outputs, tree inputs,
- tree clobbers, int vol, const char *filename,
- int line)
+ tree clobbers, int vol, location_t locus)
{
int noutputs = list_length (outputs);
int i;
/* Generate the ASM_OPERANDS insn; store into the TREE_VALUEs of
OUTPUTS some trees for where the values were actually stored. */
- expand_asm_operands (string, outputs, inputs, clobbers, vol, filename, line);
+ expand_asm_operands (string, outputs, inputs, clobbers, vol, locus);
/* Copy all the intermediate outputs into the specified outputs. */
for (i = 0, tail = outputs; tail; tail = TREE_CHAIN (tail), i++)
+2003-09-28 Richard Henderson <rth@redhat.com>
+
+ * typeck.c (c_expand_asm_operands): Take location_t, instead of
+ individual file and line.
+
2003-09-28 Andreas Jaeger <aj@suse.de>
* decl.c (cxx_builtin_type_decls): Convert to ISO C90 function
void
c_expand_asm_operands (tree string, tree outputs, tree inputs, tree clobbers,
- int vol, const char *filename, int line)
+ int vol, location_t locus)
{
int noutputs = list_length (outputs);
register int i;
/* Generate the ASM_OPERANDS insn;
store into the TREE_VALUEs of OUTPUTS some trees for
where the values were actually stored. */
- expand_asm_operands (string, outputs, inputs, clobbers, vol, filename, line);
+ expand_asm_operands (string, outputs, inputs, clobbers, vol, locus);
/* Copy all the intermediate outputs into the specified outputs. */
for (i = 0, tail = outputs; tail; tail = TREE_CHAIN (tail), i++)
void
expand_asm_operands (tree string, tree outputs, tree inputs,
- tree clobbers, int vol, const char *filename, int line)
+ tree clobbers, int vol, location_t locus)
{
rtvec argvec, constraintvec;
rtx body;
: GET_MODE (output_rtx[0])),
TREE_STRING_POINTER (string),
empty_string, 0, argvec, constraintvec,
- filename, line);
+ locus.file, locus.line);
MEM_VOLATILE_P (body) = vol;
(GET_MODE (output_rtx[i]),
TREE_STRING_POINTER (string),
constraints[i], i, argvec, constraintvec,
- filename, line));
+ locus.file, locus.line));
MEM_VOLATILE_P (SET_SRC (XVECEXP (body, 0, i))) = vol;
}
extern void expand_computed_goto (tree);
extern bool parse_output_constraint (const char **, int, int, int,
bool *, bool *, bool *);
-extern void expand_asm_operands (tree, tree, tree, tree, int,
- const char *, int);
+extern void expand_asm_operands (tree, tree, tree, tree, int, location_t);
extern tree resolve_asm_operand_names (tree, tree, tree);
extern int any_pending_cleanups (void);
extern void init_stmt_for_function (void);