summaryrefslogtreecommitdiff
path: root/powerpc
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-04-17 07:41:39 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-04-17 07:41:39 +0000
commita9a6d92cbf3371de82aa81595564c23986b4da89 (patch)
treeedd86e6cb6a355ac867f13edcbcc4dc467c30c5d /powerpc
parent59646439baa1b9cc6209b684e4ccf9aac908fdbc (diff)
__builtin_memcpy, continued.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1320 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'powerpc')
-rw-r--r--powerpc/PrintAsm.ml16
1 files changed, 8 insertions, 8 deletions
diff --git a/powerpc/PrintAsm.ml b/powerpc/PrintAsm.ml
index 4c89879..9144991 100644
--- a/powerpc/PrintAsm.ml
+++ b/powerpc/PrintAsm.ml
@@ -275,25 +275,25 @@ let print_builtin_function oc s =
| "__builtin_memcpy" ->
let lbl1 = new_label() in
let lbl2 = new_label() in
- fprintf oc " cmplwi %a, %a, 0\n" creg CR0 ireg GPR5;
- fprintf oc " beq %a, %a\n" creg CR0 label lbl1;
+ fprintf oc " cmplwi %a, %a, 0\n" creg 0 ireg GPR5;
+ fprintf oc " beq %a, %a\n" creg 0 label lbl1;
fprintf oc " mtctr %a\n" ireg GPR5;
- fprintf oc " addi %a, %a, -1\n" ireg GPR6 ireg GPR3;
+ fprintf oc " addi %a, %a, -1\n" ireg GPR3 ireg GPR3;
fprintf oc " addi %a, %a, -1\n" ireg GPR4 ireg GPR4;
fprintf oc "%a: lbzu %a, 1(%a)\n" label lbl2 ireg GPR0 ireg GPR4;
- fprintf oc " stbu %a, 1(%a)\n" ireg GPR0 ireg GPR6;
+ fprintf oc " stbu %a, 1(%a)\n" ireg GPR0 ireg GPR3;
fprintf oc " bdnz %a\n" label lbl2;
fprintf oc "%a:\n" label lbl1
- | "__builtin_memcpy_word" ->
+ | "__builtin_memcpy_words" ->
let lbl1 = new_label() in
let lbl2 = new_label() in
fprintf oc " rlwinm. %a, %a, 30, 2, 31\n" ireg GPR5 ireg GPR5;
- fprintf oc " beq %a, %a\n" creg CR0 label lbl1;
+ fprintf oc " beq %a, %a\n" creg 0 label lbl1;
fprintf oc " mtctr %a\n" ireg GPR5;
- fprintf oc " addi %a, %a, -4\n" ireg GPR6 ireg GPR3;
+ fprintf oc " addi %a, %a, -4\n" ireg GPR3 ireg GPR3;
fprintf oc " addi %a, %a, -4\n" ireg GPR4 ireg GPR4;
fprintf oc "%a: lwzu %a, 4(%a)\n" label lbl2 ireg GPR0 ireg GPR4;
- fprintf oc " stwu %a, 4(%a)\n" ireg GPR0 ireg GPR6;
+ fprintf oc " stwu %a, 4(%a)\n" ireg GPR0 ireg GPR3;
fprintf oc " bdnz %a\n" label lbl2;
fprintf oc "%a:\n" label lbl1
(* Integer arithmetic *)