aboutsummaryrefslogtreecommitdiffstats
path: root/src/bigint
diff options
context:
space:
mode:
Diffstat (limited to 'src/bigint')
-rw-r--r--src/bigint/asm_amd64/asm_macr.h125
-rw-r--r--src/bigint/asm_ia32/asm_macr.h131
-rw-r--r--src/bigint/info.txt2
-rw-r--r--src/bigint/mp_amd64/info.txt (renamed from src/bigint/mp_amd64/xxxinfo.txt)0
-rw-r--r--src/bigint/mp_ia32/info.txt (renamed from src/bigint/mp_ia32/xxxinfo.txt)2
5 files changed, 2 insertions, 258 deletions
diff --git a/src/bigint/asm_amd64/asm_macr.h b/src/bigint/asm_amd64/asm_macr.h
deleted file mode 100644
index 3cdd42dc6..000000000
--- a/src/bigint/asm_amd64/asm_macr.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*************************************************
-* Assembly Macros Header File *
-* (C) 1999-2008 Jack Lloyd *
-*************************************************/
-
-#ifndef BOTAN_AMD64_ASM_MACROS_H__
-#define BOTAN_AMD64_ASM_MACROS_H__
-
-#ifdef __ELF__
-.section .note.GNU-stack,"",%progbits
-#endif
-
-/*************************************************
-* General/Global Macros *
-*************************************************/
-#define ALIGN .p2align 4,,15
-
-#define START_LISTING(FILENAME) \
- .file #FILENAME; \
- .text; \
- ALIGN;
-
-/*************************************************
-* Function Definitions *
-*************************************************/
-#define START_FUNCTION(func_name) \
- ALIGN; \
- .global func_name; \
- .type func_name,@function; \
-func_name:
-
-#define END_FUNCTION(func_name) \
- ret
-
-/*************************************************
-* Conditional Jumps *
-*************************************************/
-#define JUMP_IF_ZERO(REG, LABEL) \
- cmp IMM(0), REG; \
- jz LABEL
-
-#define JUMP_IF_LT(REG, NUM, LABEL) \
- cmp IMM(NUM), REG; \
- jl LABEL
-
-/*************************************************
-* Register Names *
-*************************************************/
-#define R0 %rax
-#define R1 %rbx
-#define R2 %rcx
-#define R2_32 %ecx
-#define R3 %rdx
-#define R3_32 %edx
-#define R4 %rsp
-#define R5 %rbp
-#define R6 %rsi
-#define R6_32 %esi
-#define R7 %rdi
-#define R8 %r8
-#define R9 %r9
-#define R9_32 %r9d
-#define R10 %r10
-#define R11 %r11
-#define R12 %r12
-#define R13 %r13
-#define R14 %r14
-#define R15 %r15
-#define R16 %r16
-
-#define ARG_1 R7
-#define ARG_2 R6
-#define ARG_2_32 R6_32
-#define ARG_3 R3
-#define ARG_3_32 R3_32
-#define ARG_4 R2
-#define ARG_4_32 R2_32
-#define ARG_5 R8
-#define ARG_6 R9
-#define ARG_6_32 R9_32
-
-#define TEMP_1 R10
-#define TEMP_2 R11
-#define TEMP_3 ARG_6
-#define TEMP_4 ARG_5
-#define TEMP_5 ARG_4
-#define TEMP_5_32 ARG_4_32
-#define TEMP_6 ARG_3
-#define TEMP_7 ARG_2
-#define TEMP_8 ARG_1
-#define TEMP_9 R0
-
-/*************************************************
-* Memory Access Operations *
-*************************************************/
-#define ARRAY8(REG, NUM) 8*(NUM)(REG)
-#define ARRAY4(REG, NUM) 4*(NUM)(REG)
-
-#define ASSIGN(TO, FROM) mov FROM, TO
-
-/*************************************************
-* ALU Operations *
-*************************************************/
-#define IMM(VAL) $VAL
-
-#define ADD(TO, FROM) add FROM, TO
-#define ADD_LAST_CARRY(REG) adc IMM(0), REG
-#define ADD_IMM(TO, NUM) ADD(TO, IMM(NUM))
-#define ADD_W_CARRY(TO1, TO2, FROM) add FROM, TO1; adc IMM(0), TO2;
-#define SUB_IMM(TO, NUM) sub IMM(NUM), TO
-#define MUL(REG) mul REG
-
-#define XOR(TO, FROM) xor FROM, TO
-#define AND(TO, FROM) and FROM, TO
-#define OR(TO, FROM) or FROM, TO
-#define NOT(REG) not REG
-#define ZEROIZE(REG) XOR(REG, REG)
-
-#define RETURN_VALUE_IS(V) ASSIGN(%rax, V)
-
-#define ROTL_IMM(REG, NUM) rol IMM(NUM), REG
-#define ROTR_IMM(REG, NUM) ror IMM(NUM), REG
-#define ADD3_IMM(TO, FROM, NUM) lea NUM(TO,FROM,1), TO
-
-#endif
diff --git a/src/bigint/asm_ia32/asm_macr.h b/src/bigint/asm_ia32/asm_macr.h
deleted file mode 100644
index 6d5dbb59d..000000000
--- a/src/bigint/asm_ia32/asm_macr.h
+++ /dev/null
@@ -1,131 +0,0 @@
-/*************************************************
-* Assembly Macros Header File *
-* (C) 1999-2008 Jack Lloyd *
-*************************************************/
-
-#ifndef BOTAN_IA32_ASM_MACROS_H__
-#define BOTAN_IA32_ASM_MACROS_H__
-
-#ifdef __ELF__
-.section .note.GNU-stack,"",%progbits
-#endif
-
-/*************************************************
-* General/Global Macros *
-*************************************************/
-#define ALIGN .p2align 4,,15
-
-#define START_LISTING(FILENAME) \
- .file #FILENAME; \
- .text; \
- .p2align 4,,15;
-
-#ifdef __ELF__
-.section .note.GNU-stack,"",%progbits
-#endif
-
-/*************************************************
-* Function Definitions *
-*************************************************/
-#define START_FUNCTION(func_name) \
- .align 8; \
- ALIGN; \
- .global func_name; \
- .type func_name,@function; \
-func_name:
-
-#define END_FUNCTION(func_name) \
- ret
-
-/*************************************************
-* Loop Control *
-*************************************************/
-#define START_LOOP(LABEL) \
- ALIGN; \
- LABEL##_LOOP:
-
-#define LOOP_UNTIL_EQ(REG, NUM, LABEL) \
- cmpl IMM(NUM), REG; \
- jne LABEL##_LOOP
-
-#define LOOP_UNTIL_LT(REG, NUM, LABEL) \
- cmpl IMM(NUM), REG; \
- jge LABEL##_LOOP
-
-/*************************************************
- Conditional Jumps *
-*************************************************/
-#define JUMP_IF_ZERO(REG, LABEL) \
- cmpl IMM(0), REG; \
- jz LABEL
-
-#define JUMP_IF_LT(REG, NUM, LABEL) \
- cmpl IMM(NUM), REG; \
- jl LABEL
-
-/*************************************************
-* Register Names *
-*************************************************/
-#define EAX %eax
-#define EBX %ebx
-#define ECX %ecx
-#define EDX %edx
-#define EBP %ebp
-#define EDI %edi
-#define ESI %esi
-#define ESP %esp
-
-/*************************************************
-* Memory Access Operations *
-*************************************************/
-#define ARRAY1(REG, NUM) (NUM)(REG)
-#define ARRAY4(REG, NUM) 4*(NUM)(REG)
-#define ARRAY4_INDIRECT(BASE, OFFSET, NUM) 4*(NUM)(BASE,OFFSET,4)
-#define ARG(NUM) 4*(PUSHED) + ARRAY4(ESP, NUM)
-
-#define ASSIGN(TO, FROM) movl FROM, TO
-#define ASSIGN_BYTE(TO, FROM) movzbl FROM, TO
-
-#define PUSH(REG) pushl REG
-#define POP(REG) popl REG
-
-#define SPILL_REGS() \
- PUSH(EBP) ; \
- PUSH(EDI) ; \
- PUSH(ESI) ; \
- PUSH(EBX)
-
-#define RESTORE_REGS() \
- POP(EBX) ; \
- POP(ESI) ; \
- POP(EDI) ; \
- POP(EBP)
-
-/*************************************************
-* ALU Operations *
-*************************************************/
-#define IMM(VAL) $VAL
-
-#define ADD(TO, FROM) addl FROM, TO
-#define ADD_IMM(TO, NUM) ADD(TO, IMM(NUM))
-#define ADD_W_CARRY(TO1, TO2, FROM) addl FROM, TO1; adcl IMM(0), TO2;
-#define SUB_IMM(TO, NUM) subl IMM(NUM), TO
-#define ADD2_IMM(TO, FROM, NUM) leal NUM(FROM), TO
-#define ADD3_IMM(TO, FROM, NUM) leal NUM(TO,FROM,1), TO
-#define MUL(REG) mull REG
-
-#define SHL_IMM(REG, SHIFT) shll IMM(SHIFT), REG
-#define SHR_IMM(REG, SHIFT) shrl IMM(SHIFT), REG
-#define SHL2_3(TO, FROM) leal 0(,FROM,8), TO
-
-#define XOR(TO, FROM) xorl FROM, TO
-#define AND(TO, FROM) andl FROM, TO
-#define OR(TO, FROM) orl FROM, TO
-#define NOT(REG) notl REG
-#define ZEROIZE(REG) XOR(REG, REG)
-
-#define ROTL_IMM(REG, NUM) roll IMM(NUM), REG
-#define ROTR_IMM(REG, NUM) rorl IMM(NUM), REG
-#define BSWAP(REG) bswapl REG
-
-#endif
diff --git a/src/bigint/info.txt b/src/bigint/info.txt
index 966d719d6..33b738d49 100644
--- a/src/bigint/info.txt
+++ b/src/bigint/info.txt
@@ -6,7 +6,7 @@ define BIGINT
<requires>
hex
-mp_generic
+mp_ia32
</requires>
<add>
diff --git a/src/bigint/mp_amd64/xxxinfo.txt b/src/bigint/mp_amd64/info.txt
index 797d3833a..797d3833a 100644
--- a/src/bigint/mp_amd64/xxxinfo.txt
+++ b/src/bigint/mp_amd64/info.txt
diff --git a/src/bigint/mp_ia32/xxxinfo.txt b/src/bigint/mp_ia32/info.txt
index 98c66e190..51f98fda8 100644
--- a/src/bigint/mp_ia32/xxxinfo.txt
+++ b/src/bigint/mp_ia32/info.txt
@@ -1,4 +1,4 @@
-realname "MPI Core (x86)"
+realname "MPI Core (IA-32)"
mp_bits 32