Commit 735f469b by Tristan Gingold Committed by Tristan Gingold

alpha.c (alpha_write_linkage): Remove fundecl argument.

2011-11-04  Tristan Gingold  <gingold@adacore.com>

	* config/alpha/alpha.c (alpha_write_linkage): Remove fundecl
	argument.  Conditionally generate crash debug info.  Adjust
	for alpha_funcs_tree removal.
	(machine_function): Add links field.
	(alpha_start_function): Conditionally generate crash debug info.
	(alpha_end_function): Adjust call to alpha_write_linkage.
	(alpha_funcs): Remove.
	(links_kind): Remove.
	(alpha_links): Remove num, target and lkind field.  Add func field.
	(alpha_links_tree): Remove.
	(alpha_funcs_tree): Remove.
	(alpha_need_linkage): Remove.
	(alpha_use_linkage): Change prototype.  Adjust.
	(alpha_write_one_linkage): Use ASM_OUTPUT_INTERNAL_LABEL.
	Use SYMBOL_REF_EXTERNAL_P and SYMBOL_REF_LOCAL_P macro.
	* config/alpha/alpha-protos.h (alpha_use_linkage): Update.
	(alpha_need_linkage): Remove.
	* config/alpha/alpha.md: Update calls to alpha_use_linkage.
	Adjust calls to alpha_need_linkage.

From-SVN: r180928
parent 75118c2e
2011-11-04 Tristan Gingold <gingold@adacore.com>
* config/alpha/alpha.c (alpha_write_linkage): Remove fundecl
argument. Conditionally generate crash debug info. Adjust
for alpha_funcs_tree removal.
(machine_function): Add links field.
(alpha_start_function): Conditionally generate crash debug info.
(alpha_end_function): Adjust call to alpha_write_linkage.
(alpha_funcs): Remove.
(links_kind): Remove.
(alpha_links): Remove num, target and lkind field. Add func field.
(alpha_links_tree): Remove.
(alpha_funcs_tree): Remove.
(alpha_need_linkage): Remove.
(alpha_use_linkage): Change prototype. Adjust.
(alpha_write_one_linkage): Use ASM_OUTPUT_INTERNAL_LABEL.
Use SYMBOL_REF_EXTERNAL_P and SYMBOL_REF_LOCAL_P macro.
* config/alpha/alpha-protos.h (alpha_use_linkage): Update.
(alpha_need_linkage): Remove.
* config/alpha/alpha.md: Update calls to alpha_use_linkage.
Adjust calls to alpha_need_linkage.
2011-11-03 Uros Bizjak <ubizjak@gmail.com> 2011-11-03 Uros Bizjak <ubizjak@gmail.com>
* sched-vis.c (print_value): Handle STRICT_LOW_PART. * sched-vis.c (print_value): Handle STRICT_LOW_PART.
...@@ -99,8 +99,7 @@ extern void alpha_split_lock_test_and_set_12 (enum machine_mode, rtx, rtx, ...@@ -99,8 +99,7 @@ extern void alpha_split_lock_test_and_set_12 (enum machine_mode, rtx, rtx,
rtx, rtx, rtx); rtx, rtx, rtx);
#endif #endif
extern rtx alpha_need_linkage (const char *, int); extern rtx alpha_use_linkage (rtx, bool, bool);
extern rtx alpha_use_linkage (rtx, tree, int, int);
#if TARGET_ABI_OPEN_VMS #if TARGET_ABI_OPEN_VMS
extern enum avms_arg_type alpha_arg_type (enum machine_mode); extern enum avms_arg_type alpha_arg_type (enum machine_mode);
......
...@@ -3965,8 +3965,6 @@ ...@@ -3965,8 +3965,6 @@
emit_move_insn (gen_rtx_REG (DImode, 25), operands[1]); emit_move_insn (gen_rtx_REG (DImode, 25), operands[1]);
if (GET_CODE (operands[0]) == SYMBOL_REF) if (GET_CODE (operands[0]) == SYMBOL_REF)
{ {
alpha_need_linkage (XSTR (operands[0], 0), 0);
operands[2] = const0_rtx; operands[2] = const0_rtx;
} }
else else
...@@ -4042,8 +4040,6 @@ ...@@ -4042,8 +4040,6 @@
emit_move_insn (gen_rtx_REG (DImode, 25), operands[2]); emit_move_insn (gen_rtx_REG (DImode, 25), operands[2]);
if (GET_CODE (operands[1]) == SYMBOL_REF) if (GET_CODE (operands[1]) == SYMBOL_REF)
{ {
alpha_need_linkage (XSTR (operands[1], 0), 0);
operands[3] = const0_rtx; operands[3] = const0_rtx;
} }
else else
...@@ -4244,8 +4240,8 @@ ...@@ -4244,8 +4240,8 @@
case 0: case 0:
return "mov %2,$27\;jsr $26,0\;ldq $27,0($29)"; return "mov %2,$27\;jsr $26,0\;ldq $27,0($29)";
case 1: case 1:
operands [2] = alpha_use_linkage (operands [0], cfun->decl, 1, 0); operands [2] = alpha_use_linkage (operands [0], true, false);
operands [3] = alpha_use_linkage (operands [0], cfun->decl, 0, 0); operands [3] = alpha_use_linkage (operands [0], false, false);
return "ldq $26,%3\;ldq $27,%2\;jsr $26,%0\;ldq $27,0($29)"; return "ldq $26,%3\;ldq $27,%2\;jsr $26,%0\;ldq $27,0($29)";
default: default:
gcc_unreachable (); gcc_unreachable ();
...@@ -5472,7 +5468,7 @@ ...@@ -5472,7 +5468,7 @@
(clobber (reg:DI 27))])] (clobber (reg:DI 27))])]
"TARGET_ABI_OPEN_VMS" "TARGET_ABI_OPEN_VMS"
{ {
operands[4] = alpha_need_linkage ("OTS$MOVE", 0); operands[4] = gen_rtx_SYMBOL_REF (Pmode, "OTS$MOVE");
}) })
(define_insn "*movmemdi_1" (define_insn "*movmemdi_1"
...@@ -5491,7 +5487,7 @@ ...@@ -5491,7 +5487,7 @@
(clobber (reg:DI 27))] (clobber (reg:DI 27))]
"TARGET_ABI_OPEN_VMS" "TARGET_ABI_OPEN_VMS"
{ {
operands [5] = alpha_use_linkage (operands [4], cfun->decl, 0, 1); operands [5] = alpha_use_linkage (operands [4], false, true);
switch (which_alternative) switch (which_alternative)
{ {
case 0: case 0:
...@@ -5539,7 +5535,7 @@ ...@@ -5539,7 +5535,7 @@
if (operands[2] != const0_rtx) if (operands[2] != const0_rtx)
FAIL; FAIL;
operands[4] = alpha_need_linkage ("OTS$ZERO", 0); operands[4] = gen_rtx_SYMBOL_REF (Pmode, "OTS$ZERO");
}) })
(define_insn "*clrmemdi_1" (define_insn "*clrmemdi_1"
...@@ -5555,7 +5551,7 @@ ...@@ -5555,7 +5551,7 @@
(clobber (reg:DI 27))] (clobber (reg:DI 27))]
"TARGET_ABI_OPEN_VMS" "TARGET_ABI_OPEN_VMS"
{ {
operands [4] = alpha_use_linkage (operands [3], cfun->decl, 0, 1); operands [4] = alpha_use_linkage (operands [3], false, true);
switch (which_alternative) switch (which_alternative)
{ {
case 0: case 0:
...@@ -6825,8 +6821,8 @@ ...@@ -6825,8 +6821,8 @@
case 0: case 0:
return "mov %3,$27\;jsr $26,0\;ldq $27,0($29)"; return "mov %3,$27\;jsr $26,0\;ldq $27,0($29)";
case 1: case 1:
operands [3] = alpha_use_linkage (operands [1], cfun->decl, 1, 0); operands [3] = alpha_use_linkage (operands [1], true, false);
operands [4] = alpha_use_linkage (operands [1], cfun->decl, 0, 0); operands [4] = alpha_use_linkage (operands [1], false, false);
return "ldq $26,%4\;ldq $27,%3\;jsr $26,%1\;ldq $27,0($29)"; return "ldq $26,%4\;ldq $27,%3\;jsr $26,%1\;ldq $27,0($29)";
default: default:
gcc_unreachable (); gcc_unreachable ();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment