aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@gcc.gnu.org>1999-01-21 12:32:21 -0800
committerRichard Henderson <rth@gcc.gnu.org>1999-01-21 12:32:21 -0800
commit73d288ba2740078737801ad4a5c6b91cae41917c (patch)
tree86c6642567599f64dc443c518e1e7a4bfead09bb
parente9359c7128fed3b550d2afa87741e7e7392344b8 (diff)
downloadgcc-73d288ba2740078737801ad4a5c6b91cae41917c.zip
gcc-73d288ba2740078737801ad4a5c6b91cae41917c.tar.gz
gcc-73d288ba2740078737801ad4a5c6b91cae41917c.tar.bz2
alpha.md (prologue_stack_probe_loop): Don't do our own label handling, call gen_label_rtx instead.
* alpha.md (prologue_stack_probe_loop): Don't do our own label handling, call gen_label_rtx instead. From-SVN: r24808
-rw-r--r--gcc/config/alpha/alpha.md26
1 files changed, 5 insertions, 21 deletions
diff --git a/gcc/config/alpha/alpha.md b/gcc/config/alpha/alpha.md
index 59b04f9..c376d48 100644
--- a/gcc/config/alpha/alpha.md
+++ b/gcc/config/alpha/alpha.md
@@ -5132,27 +5132,11 @@
""
"*
{
- static int label_no;
- int count_regno = REGNO (operands[0]);
- int ptr_regno = REGNO (operands[1]);
- char label[64];
-
- /* Ho hum, output the hard way to get the label at the beginning of
- the line. Wish there were a magic char you could get
- asm_output_printf to do that. Then we could use %= as well and
- get rid of the label_no bits here too. */
-
- ASM_GENERATE_INTERNAL_LABEL (label, \"LSC\", label_no);
- ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LSC\", label_no++);
-
- fprintf (asm_out_file, \"\\tstq $31,-8192($%d)\\n\", ptr_regno);
- fprintf (asm_out_file, \"\\tsubq $%d,1,$%d\\n\", count_regno, count_regno);
- fprintf (asm_out_file, \"\\tlda $%d,-8192($%d)\\n\", ptr_regno, ptr_regno);
- fprintf (asm_out_file, \"\\tbne $%d,\", count_regno);
- assemble_name (asm_out_file, label);
- putc ('\\n', asm_out_file);
-
- return \"\";
+ operands[2] = gen_label_rtx ();
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"L\",
+ CODE_LABEL_NUMBER (operands[2]));
+
+ return \"stq $31,-8192(%1)\;subq %0,1,%0\;lda %1,-8192(%1)\;bne %0,%l2\";
}"
[(set_attr "length" "16")
(set_attr "type" "multi")])