diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-04-29 17:11:47 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-04-29 17:11:47 +0000 |
commit | 5c84fd4adbcd8a63cc29fb0286cb46f18abde55c (patch) | |
tree | 39c5c7057d4a7da0b674d8427a9e8910927859f7 /runtime/arm | |
parent | 540bc673fd0e924c20521bb011de56f11c91c493 (diff) |
Expand 64-bit integer comparisons into 32-bit integer comparisons.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2218 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'runtime/arm')
-rw-r--r-- | runtime/arm/i64_scmp.s | 56 | ||||
-rw-r--r-- | runtime/arm/i64_ucmp.s | 51 |
2 files changed, 0 insertions, 107 deletions
diff --git a/runtime/arm/i64_scmp.s b/runtime/arm/i64_scmp.s deleted file mode 100644 index 144a13c..0000000 --- a/runtime/arm/i64_scmp.s +++ /dev/null @@ -1,56 +0,0 @@ -@ ***************************************************************** -@ -@ The Compcert verified compiler -@ -@ Xavier Leroy, INRIA Paris-Rocquencourt -@ -@ Copyright (c) 2013 Institut National de Recherche en Informatique et -@ en Automatique. -@ -@ Redistribution and use in source and binary forms, with or without -@ modification, are permitted provided that the following conditions are met: -@ * Redistributions of source code must retain the above copyright -@ notice, this list of conditions and the following disclaimer. -@ * Redistributions in binary form must reproduce the above copyright -@ notice, this list of conditions and the following disclaimer in the -@ documentation and/or other materials provided with the distribution. -@ * Neither the name of the <organization> nor the -@ names of its contributors may be used to endorse or promote products -@ derived from this software without specific prior written permission. -@ -@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -@ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -@ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -@ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT -@ HOLDER> BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -@ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -@ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -@ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -@ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -@ -@ ********************************************************************* - -@ Helper functions for 64-bit integer arithmetic. ARM version. - - .text - -@@@ Signed comparison - - .global __i64_scmp -__i64_scmp: - cmp r0, r2 @ compare low words (unsigned) - moveq r0, #0 @ res = 0 if eq - movhi r0, #1 @ res = 1 if unsigned higher - mvnlo r0, #0 @ res = -1 if unsigned lower - cmp r1, r3 @ compare high words (signed) - addgt r0, r0, #2 @ res += 2 if signed greater - sublt r0, r0, #2 @ res -= 2 if signed less - @ here, r0 = 0 if X == Y - @ r0 = -3, -2, -1 if X < Y - @ r0 = 1, 2, 3 if X > Y - bx lr - .type __i64_scmp, %function - .size __i64_scmp, . - __i64_scmp - diff --git a/runtime/arm/i64_ucmp.s b/runtime/arm/i64_ucmp.s deleted file mode 100644 index 51a5fdb..0000000 --- a/runtime/arm/i64_ucmp.s +++ /dev/null @@ -1,51 +0,0 @@ -@ ***************************************************************** -@ -@ The Compcert verified compiler -@ -@ Xavier Leroy, INRIA Paris-Rocquencourt -@ -@ Copyright (c) 2013 Institut National de Recherche en Informatique et -@ en Automatique. -@ -@ Redistribution and use in source and binary forms, with or without -@ modification, are permitted provided that the following conditions are met: -@ * Redistributions of source code must retain the above copyright -@ notice, this list of conditions and the following disclaimer. -@ * Redistributions in binary form must reproduce the above copyright -@ notice, this list of conditions and the following disclaimer in the -@ documentation and/or other materials provided with the distribution. -@ * Neither the name of the <organization> nor the -@ names of its contributors may be used to endorse or promote products -@ derived from this software without specific prior written permission. -@ -@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -@ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -@ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -@ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT -@ HOLDER> BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -@ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -@ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -@ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -@ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -@ -@ ********************************************************************* - -@ Helper functions for 64-bit integer arithmetic. ARM version. - - .text - -@@@ Unsigned comparison - - .global __i64_ucmp -__i64_ucmp: - cmp r1, r3 @ compare high words - cmpeq r0, r2 @ if equal, compare low words instead - moveq r0, #0 @ res = 0 if eq - movhi r0, #1 @ res = 1 if unsigned higher - mvnlo r0, #0 @ res = -1 if unsigned lower - bx lr - .type __i64_ucmp, %function - .size __i64_ucmp, . - __i64_ucmp - |