ref: 3730963073d80bb360486266d262fe3dc33e98d4
parent: d377580d0720b384f30ddfb3eb40a82b219c7784
parent: a75a9cf2fddefec93b7682d7698fb35138e7c8a6
author: John Koleszar <jkoleszar@google.com>
date: Tue Sep 25 07:32:11 EDT 2012
Merge "check for x32 targets"
--- a/build/make/configure.sh
+++ b/build/make/configure.sh
@@ -989,6 +989,11 @@
x86*)
bits=32
enabled x86_64 && bits=64
+ check_cpp <<EOF && bits=x32
+#ifndef __ILP32__
+#error "not x32"
+#endif
+EOF
soft_enable runtime_cpu_detect
soft_enable mmx
soft_enable sse
--- a/vpx_ports/x86_abi_support.asm
+++ b/vpx_ports/x86_abi_support.asm
@@ -88,6 +88,8 @@
%define sym(x) x
%elifidn __OUTPUT_FORMAT__,elf64
%define sym(x) x
+%elifidn __OUTPUT_FORMAT__,elfx32
+%define sym(x) x
%elifidn __OUTPUT_FORMAT__,x64
%define sym(x) x
%else
@@ -110,6 +112,8 @@
%define PRIVATE :hidden
%elifidn __OUTPUT_FORMAT__,elf64
%define PRIVATE :hidden
+ %elifidn __OUTPUT_FORMAT__,elfx32
+ %define PRIVATE :hidden
%elifidn __OUTPUT_FORMAT__,x64
%define PRIVATE
%else
@@ -223,6 +227,9 @@
%ifidn __OUTPUT_FORMAT__,elf64
%define WRT_PLT wrt ..plt
%define HIDDEN_DATA(x) x:data hidden
+ %elifidn __OUTPUT_FORMAT__,elfx32
+ %define WRT_PLT wrt ..plt
+ %define HIDDEN_DATA(x) x:data hidden
%else
%define HIDDEN_DATA(x) x
%endif
@@ -362,6 +369,9 @@
section .note.GNU-stack noalloc noexec nowrite progbits
section .text
%elifidn __OUTPUT_FORMAT__,elf64
+section .note.GNU-stack noalloc noexec nowrite progbits
+section .text
+%elifidn __OUTPUT_FORMAT__,elfx32
section .note.GNU-stack noalloc noexec nowrite progbits
section .text
%endif
--
⑨