No FreeBSD-local changes in these files.
This commit is contained in:
parent
b26392c7f6
commit
3697be5590
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=122190
@ -401,7 +401,7 @@ CRTSTUFF_CFLAGS = -O2 $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) -g0 \
|
||||
-finhibit-size-directive -fno-inline-functions -fno-exceptions \
|
||||
-fno-zero-initialized-in-bss
|
||||
|
||||
# Additional sources to handle exceptions; overridden on ia64.
|
||||
# Additional sources to handle exceptions; overridden by targets as needed.
|
||||
LIB2ADDEH = $(srcdir)/unwind-dw2.c $(srcdir)/unwind-dw2-fde.c \
|
||||
$(srcdir)/unwind-sjlj.c $(srcdir)/unwind-c.c
|
||||
LIB2ADDEHDEP = unwind.inc unwind-dw2-fde.h
|
||||
|
@ -1344,7 +1344,12 @@ expand_builtin_apply (function, arguments, argsize)
|
||||
OK_DEFER_POP;
|
||||
|
||||
/* Return the address of the result block. */
|
||||
return copy_addr_to_reg (XEXP (result, 0));
|
||||
result = copy_addr_to_reg (XEXP (result, 0));
|
||||
#ifdef POINTERS_EXTEND_UNSIGNED
|
||||
if (GET_MODE (result) != ptr_mode)
|
||||
result = convert_memory_address (ptr_mode, result);
|
||||
#endif
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Perform an untyped return. */
|
||||
@ -2348,7 +2353,7 @@ expand_builtin_bzero (exp)
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Expand expression EXP, which is a call to the memcmp or the strcmp builtin.
|
||||
/* Expand expression EXP, which is a call to the memcmp built-in function.
|
||||
ARGLIST is the argument list for this call. Return 0 if we failed and the
|
||||
caller should emit a normal call, otherwise try to get the result in
|
||||
TARGET, if convenient (and in mode MODE, if that's convenient). */
|
||||
@ -2485,7 +2490,7 @@ expand_builtin_strcmp (exp, target, mode)
|
||||
enum machine_mode mode;
|
||||
{
|
||||
tree arglist = TREE_OPERAND (exp, 1);
|
||||
tree arg1, arg2, len, len2, fn;
|
||||
tree arg1, arg2;
|
||||
const char *p1, *p2;
|
||||
|
||||
if (!validate_arglist (arglist, POINTER_TYPE, POINTER_TYPE, VOID_TYPE))
|
||||
@ -2521,51 +2526,89 @@ expand_builtin_strcmp (exp, target, mode)
|
||||
return expand_expr (result, target, mode, EXPAND_NORMAL);
|
||||
}
|
||||
|
||||
len = c_strlen (arg1);
|
||||
len2 = c_strlen (arg2);
|
||||
|
||||
if (len)
|
||||
len = size_binop (PLUS_EXPR, ssize_int (1), len);
|
||||
|
||||
if (len2)
|
||||
len2 = size_binop (PLUS_EXPR, ssize_int (1), len2);
|
||||
|
||||
/* If we don't have a constant length for the first, use the length
|
||||
of the second, if we know it. We don't require a constant for
|
||||
this case; some cost analysis could be done if both are available
|
||||
but neither is constant. For now, assume they're equally cheap
|
||||
unless one has side effects.
|
||||
|
||||
If both strings have constant lengths, use the smaller. This
|
||||
could arise if optimization results in strcpy being called with
|
||||
two fixed strings, or if the code was machine-generated. We should
|
||||
add some code to the `memcmp' handler below to deal with such
|
||||
situations, someday. */
|
||||
|
||||
if (!len || TREE_CODE (len) != INTEGER_CST)
|
||||
#ifdef HAVE_cmpstrsi
|
||||
if (HAVE_cmpstrsi)
|
||||
{
|
||||
if (len2 && !TREE_SIDE_EFFECTS (len2))
|
||||
tree len, len1, len2;
|
||||
rtx arg1_rtx, arg2_rtx, arg3_rtx;
|
||||
rtx result, insn;
|
||||
|
||||
int arg1_align
|
||||
= get_pointer_alignment (arg1, BIGGEST_ALIGNMENT) / BITS_PER_UNIT;
|
||||
int arg2_align
|
||||
= get_pointer_alignment (arg2, BIGGEST_ALIGNMENT) / BITS_PER_UNIT;
|
||||
enum machine_mode insn_mode
|
||||
= insn_data[(int) CODE_FOR_cmpstrsi].operand[0].mode;
|
||||
|
||||
len1 = c_strlen (arg1);
|
||||
len2 = c_strlen (arg2);
|
||||
|
||||
if (len1)
|
||||
len1 = size_binop (PLUS_EXPR, ssize_int (1), len1);
|
||||
if (len2)
|
||||
len2 = size_binop (PLUS_EXPR, ssize_int (1), len2);
|
||||
|
||||
/* If we don't have a constant length for the first, use the length
|
||||
of the second, if we know it. We don't require a constant for
|
||||
this case; some cost analysis could be done if both are available
|
||||
but neither is constant. For now, assume they're equally cheap
|
||||
unless one has side effects. If both strings have constant lengths,
|
||||
use the smaller. */
|
||||
|
||||
if (!len1)
|
||||
len = len2;
|
||||
else if (len == 0)
|
||||
else if (!len2)
|
||||
len = len1;
|
||||
else if (TREE_SIDE_EFFECTS (len1))
|
||||
len = len2;
|
||||
else if (TREE_SIDE_EFFECTS (len2))
|
||||
len = len1;
|
||||
else if (TREE_CODE (len1) != INTEGER_CST)
|
||||
len = len2;
|
||||
else if (TREE_CODE (len2) != INTEGER_CST)
|
||||
len = len1;
|
||||
else if (tree_int_cst_lt (len1, len2))
|
||||
len = len1;
|
||||
else
|
||||
len = len2;
|
||||
|
||||
/* If both arguments have side effects, we cannot optimize. */
|
||||
if (!len || TREE_SIDE_EFFECTS (len))
|
||||
return 0;
|
||||
|
||||
/* If we don't have POINTER_TYPE, call the function. */
|
||||
if (arg1_align == 0 || arg2_align == 0)
|
||||
return 0;
|
||||
|
||||
/* Make a place to write the result of the instruction. */
|
||||
result = target;
|
||||
if (! (result != 0
|
||||
&& GET_CODE (result) == REG
|
||||
&& GET_MODE (result) == insn_mode
|
||||
&& REGNO (result) >= FIRST_PSEUDO_REGISTER))
|
||||
result = gen_reg_rtx (insn_mode);
|
||||
|
||||
arg1_rtx = get_memory_rtx (arg1);
|
||||
arg2_rtx = get_memory_rtx (arg2);
|
||||
arg3_rtx = expand_expr (len, NULL_RTX, VOIDmode, 0);
|
||||
insn = gen_cmpstrsi (result, arg1_rtx, arg2_rtx, arg3_rtx,
|
||||
GEN_INT (MIN (arg1_align, arg2_align)));
|
||||
if (!insn)
|
||||
return 0;
|
||||
|
||||
emit_insn (insn);
|
||||
|
||||
/* Return the value in the proper mode for this function. */
|
||||
mode = TYPE_MODE (TREE_TYPE (exp));
|
||||
if (GET_MODE (result) == mode)
|
||||
return result;
|
||||
if (target == 0)
|
||||
return convert_to_mode (mode, result, 0);
|
||||
convert_move (target, result, 0);
|
||||
return target;
|
||||
}
|
||||
else if (len2 && TREE_CODE (len2) == INTEGER_CST
|
||||
&& tree_int_cst_lt (len2, len))
|
||||
len = len2;
|
||||
|
||||
/* If both arguments have side effects, we cannot optimize. */
|
||||
if (TREE_SIDE_EFFECTS (len))
|
||||
return 0;
|
||||
|
||||
fn = built_in_decls[BUILT_IN_MEMCMP];
|
||||
if (!fn)
|
||||
return 0;
|
||||
|
||||
arglist = build_tree_list (NULL_TREE, len);
|
||||
arglist = tree_cons (NULL_TREE, arg2, arglist);
|
||||
arglist = tree_cons (NULL_TREE, arg1, arglist);
|
||||
return expand_expr (build_function_call_expr (fn, arglist),
|
||||
target, mode, EXPAND_NORMAL);
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Expand expression EXP, which is a call to the strncmp builtin. Return 0
|
||||
@ -2579,7 +2622,6 @@ expand_builtin_strncmp (exp, target, mode)
|
||||
enum machine_mode mode;
|
||||
{
|
||||
tree arglist = TREE_OPERAND (exp, 1);
|
||||
tree fn, newarglist, len = 0;
|
||||
tree arg1, arg2, arg3;
|
||||
const char *p1, *p2;
|
||||
|
||||
@ -2633,41 +2675,94 @@ expand_builtin_strncmp (exp, target, mode)
|
||||
}
|
||||
|
||||
/* If c_strlen can determine an expression for one of the string
|
||||
lengths, and it doesn't have side effects, then call
|
||||
expand_builtin_memcmp() using length MIN(strlen(string)+1, arg3). */
|
||||
lengths, and it doesn't have side effects, then emit cmpstrsi
|
||||
using length MIN(strlen(string)+1, arg3). */
|
||||
#ifdef HAVE_cmpstrsi
|
||||
if (HAVE_cmpstrsi)
|
||||
{
|
||||
tree len, len1, len2;
|
||||
rtx arg1_rtx, arg2_rtx, arg3_rtx;
|
||||
rtx result, insn;
|
||||
|
||||
/* Perhaps one of the strings is really constant, if so prefer
|
||||
that constant length over the other string's length. */
|
||||
if (p1)
|
||||
len = c_strlen (arg1);
|
||||
else if (p2)
|
||||
len = c_strlen (arg2);
|
||||
int arg1_align
|
||||
= get_pointer_alignment (arg1, BIGGEST_ALIGNMENT) / BITS_PER_UNIT;
|
||||
int arg2_align
|
||||
= get_pointer_alignment (arg2, BIGGEST_ALIGNMENT) / BITS_PER_UNIT;
|
||||
enum machine_mode insn_mode
|
||||
= insn_data[(int) CODE_FOR_cmpstrsi].operand[0].mode;
|
||||
|
||||
/* If we still don't have a len, try either string arg as long
|
||||
as they don't have side effects. */
|
||||
if (!len && !TREE_SIDE_EFFECTS (arg1))
|
||||
len = c_strlen (arg1);
|
||||
if (!len && !TREE_SIDE_EFFECTS (arg2))
|
||||
len = c_strlen (arg2);
|
||||
/* If we still don't have a length, punt. */
|
||||
if (!len)
|
||||
return 0;
|
||||
len1 = c_strlen (arg1);
|
||||
len2 = c_strlen (arg2);
|
||||
|
||||
fn = built_in_decls[BUILT_IN_MEMCMP];
|
||||
if (!fn)
|
||||
return 0;
|
||||
if (len1)
|
||||
len1 = size_binop (PLUS_EXPR, ssize_int (1), len1);
|
||||
if (len2)
|
||||
len2 = size_binop (PLUS_EXPR, ssize_int (1), len2);
|
||||
|
||||
/* Add one to the string length. */
|
||||
len = fold (size_binop (PLUS_EXPR, len, ssize_int (1)));
|
||||
/* If we don't have a constant length for the first, use the length
|
||||
of the second, if we know it. We don't require a constant for
|
||||
this case; some cost analysis could be done if both are available
|
||||
but neither is constant. For now, assume they're equally cheap,
|
||||
unless one has side effects. If both strings have constant lengths,
|
||||
use the smaller. */
|
||||
|
||||
/* The actual new length parameter is MIN(len,arg3). */
|
||||
len = fold (build (MIN_EXPR, TREE_TYPE (len), len, arg3));
|
||||
if (!len1)
|
||||
len = len2;
|
||||
else if (!len2)
|
||||
len = len1;
|
||||
else if (TREE_SIDE_EFFECTS (len1))
|
||||
len = len2;
|
||||
else if (TREE_SIDE_EFFECTS (len2))
|
||||
len = len1;
|
||||
else if (TREE_CODE (len1) != INTEGER_CST)
|
||||
len = len2;
|
||||
else if (TREE_CODE (len2) != INTEGER_CST)
|
||||
len = len1;
|
||||
else if (tree_int_cst_lt (len1, len2))
|
||||
len = len1;
|
||||
else
|
||||
len = len2;
|
||||
|
||||
newarglist = build_tree_list (NULL_TREE, len);
|
||||
newarglist = tree_cons (NULL_TREE, arg2, newarglist);
|
||||
newarglist = tree_cons (NULL_TREE, arg1, newarglist);
|
||||
return expand_expr (build_function_call_expr (fn, newarglist),
|
||||
target, mode, EXPAND_NORMAL);
|
||||
/* If both arguments have side effects, we cannot optimize. */
|
||||
if (!len || TREE_SIDE_EFFECTS (len))
|
||||
return 0;
|
||||
|
||||
/* The actual new length parameter is MIN(len,arg3). */
|
||||
len = fold (build (MIN_EXPR, TREE_TYPE (len), len, arg3));
|
||||
|
||||
/* If we don't have POINTER_TYPE, call the function. */
|
||||
if (arg1_align == 0 || arg2_align == 0)
|
||||
return 0;
|
||||
|
||||
/* Make a place to write the result of the instruction. */
|
||||
result = target;
|
||||
if (! (result != 0
|
||||
&& GET_CODE (result) == REG
|
||||
&& GET_MODE (result) == insn_mode
|
||||
&& REGNO (result) >= FIRST_PSEUDO_REGISTER))
|
||||
result = gen_reg_rtx (insn_mode);
|
||||
|
||||
arg1_rtx = get_memory_rtx (arg1);
|
||||
arg2_rtx = get_memory_rtx (arg2);
|
||||
arg3_rtx = expand_expr (len, NULL_RTX, VOIDmode, 0);
|
||||
insn = gen_cmpstrsi (result, arg1_rtx, arg2_rtx, arg3_rtx,
|
||||
GEN_INT (MIN (arg1_align, arg2_align)));
|
||||
if (!insn)
|
||||
return 0;
|
||||
|
||||
emit_insn (insn);
|
||||
|
||||
/* Return the value in the proper mode for this function. */
|
||||
mode = TYPE_MODE (TREE_TYPE (exp));
|
||||
if (GET_MODE (result) == mode)
|
||||
return result;
|
||||
if (target == 0)
|
||||
return convert_to_mode (mode, result, 0);
|
||||
convert_move (target, result, 0);
|
||||
return target;
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Expand expression EXP, which is a call to the strcat builtin.
|
||||
|
@ -2949,12 +2949,8 @@ alpha_expand_mov (mode, operands)
|
||||
compiled at the end of compilation. In the meantime, someone can
|
||||
re-encode-section-info on some symbol changing it e.g. from global
|
||||
to local-not-small. If this happens, we'd have emitted a plain
|
||||
load rather than a high+losum load and not recognize the insn.
|
||||
|
||||
So if rtl inlining is in effect, we delay the global/not-global
|
||||
decision until rest_of_compilation by wrapping it in an
|
||||
UNSPEC_SYMBOL. */
|
||||
if (TARGET_EXPLICIT_RELOCS && flag_inline_functions
|
||||
load rather than a high+losum load and not recognize the insn. */
|
||||
if (TARGET_EXPLICIT_RELOCS
|
||||
&& rtx_equal_function_value_matters
|
||||
&& global_symbolic_operand (operands[1], mode))
|
||||
{
|
||||
@ -3336,10 +3332,10 @@ alpha_emit_conditional_branch (code)
|
||||
if (op1 == const0_rtx)
|
||||
cmp_code = NIL, branch_code = code;
|
||||
|
||||
/* We want to use cmpcc/bcc when we can, since there is a zero delay
|
||||
bypass between logicals and br/cmov on EV5. But we don't want to
|
||||
force valid immediate constants into registers needlessly. */
|
||||
else if (GET_CODE (op1) == CONST_INT)
|
||||
/* If the constants doesn't fit into an immediate, but can
|
||||
be generated by lda/ldah, we adjust the argument and
|
||||
compare against zero, so we can use beq/bne directly. */
|
||||
else if (GET_CODE (op1) == CONST_INT && (code == EQ || code == NE))
|
||||
{
|
||||
HOST_WIDE_INT v = INTVAL (op1), n = -v;
|
||||
|
||||
@ -6748,14 +6744,21 @@ alpha_sa_mask (imaskP, fmaskP)
|
||||
|
||||
/* We need to restore these for the handler. */
|
||||
if (current_function_calls_eh_return)
|
||||
for (i = 0; ; ++i)
|
||||
{
|
||||
unsigned regno = EH_RETURN_DATA_REGNO (i);
|
||||
if (regno == INVALID_REGNUM)
|
||||
break;
|
||||
imask |= 1L << regno;
|
||||
}
|
||||
|
||||
{
|
||||
for (i = 0; ; ++i)
|
||||
{
|
||||
unsigned regno = EH_RETURN_DATA_REGNO (i);
|
||||
if (regno == INVALID_REGNUM)
|
||||
break;
|
||||
imask |= 1L << regno;
|
||||
}
|
||||
|
||||
/* Glibc likes to use $31 as an unwind stopper for crt0. To
|
||||
avoid hackery in unwind-dw2.c, we need to actively store a
|
||||
zero in the prologue of _Unwind_RaiseException et al. */
|
||||
imask |= 1UL << 31;
|
||||
}
|
||||
|
||||
/* If any register spilled, then spill the return address also. */
|
||||
/* ??? This is required by the Digital stack unwind specification
|
||||
and isn't needed if we're doing Dwarf2 unwinding. */
|
||||
@ -7210,7 +7213,7 @@ alpha_expand_prologue ()
|
||||
}
|
||||
|
||||
/* Now save any other registers required to be saved. */
|
||||
for (i = 0; i < 32; i++)
|
||||
for (i = 0; i < 31; i++)
|
||||
if (imask & (1L << i))
|
||||
{
|
||||
mem = gen_rtx_MEM (DImode, plus_constant (sa_reg, reg_offset));
|
||||
@ -7219,7 +7222,25 @@ alpha_expand_prologue ()
|
||||
reg_offset += 8;
|
||||
}
|
||||
|
||||
for (i = 0; i < 32; i++)
|
||||
/* Store a zero if requested for unwinding. */
|
||||
if (imask & (1UL << 31))
|
||||
{
|
||||
rtx insn, t;
|
||||
|
||||
mem = gen_rtx_MEM (DImode, plus_constant (sa_reg, reg_offset));
|
||||
set_mem_alias_set (mem, alpha_sr_alias_set);
|
||||
insn = emit_move_insn (mem, const0_rtx);
|
||||
|
||||
RTX_FRAME_RELATED_P (insn) = 1;
|
||||
t = gen_rtx_REG (Pmode, 31);
|
||||
t = gen_rtx_SET (VOIDmode, mem, t);
|
||||
t = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR, t, REG_NOTES (insn));
|
||||
REG_NOTES (insn) = t;
|
||||
|
||||
reg_offset += 8;
|
||||
}
|
||||
|
||||
for (i = 0; i < 31; i++)
|
||||
if (fmask & (1L << i))
|
||||
{
|
||||
mem = gen_rtx_MEM (DFmode, plus_constant (sa_reg, reg_offset));
|
||||
@ -7625,7 +7646,7 @@ alpha_expand_epilogue ()
|
||||
reg_offset += 8;
|
||||
imask &= ~(1L << REG_RA);
|
||||
|
||||
for (i = 0; i < 32; ++i)
|
||||
for (i = 0; i < 31; ++i)
|
||||
if (imask & (1L << i))
|
||||
{
|
||||
if (i == HARD_FRAME_POINTER_REGNUM && fp_is_frame_pointer)
|
||||
@ -7639,7 +7660,10 @@ alpha_expand_epilogue ()
|
||||
reg_offset += 8;
|
||||
}
|
||||
|
||||
for (i = 0; i < 32; ++i)
|
||||
if (imask & (1UL << 31))
|
||||
reg_offset += 8;
|
||||
|
||||
for (i = 0; i < 31; ++i)
|
||||
if (fmask & (1L << i))
|
||||
{
|
||||
mem = gen_rtx_MEM (DFmode, plus_constant(sa_reg, reg_offset));
|
||||
|
@ -110,6 +110,13 @@
|
||||
(UNSPEC_MFENCE 59)
|
||||
(UNSPEC_LFENCE 60)
|
||||
(UNSPEC_PSADBW 61)
|
||||
(UNSPEC_ADDSUB 71)
|
||||
(UNSPEC_HADD 72)
|
||||
(UNSPEC_HSUB 73)
|
||||
(UNSPEC_MOVSHDUP 74)
|
||||
(UNSPEC_MOVSLDUP 75)
|
||||
(UNSPEC_LDQQU 76)
|
||||
(UNSPEC_MOVDDUP 77)
|
||||
])
|
||||
|
||||
(define_constants
|
||||
@ -120,6 +127,8 @@
|
||||
(UNSPECV_STMXCSR 40)
|
||||
(UNSPECV_FEMMS 46)
|
||||
(UNSPECV_CLFLUSH 57)
|
||||
(UNSPECV_MONITOR 69)
|
||||
(UNSPECV_MWAIT 70)
|
||||
])
|
||||
|
||||
;; Insns whose names begin with "x86_" are emitted by gen_FOO calls
|
||||
@ -22072,3 +22081,129 @@
|
||||
"lfence"
|
||||
[(set_attr "type" "sse")
|
||||
(set_attr "memory" "unknown")])
|
||||
|
||||
;; PNI
|
||||
|
||||
(define_insn "mwait"
|
||||
[(unspec_volatile [(match_operand:SI 0 "register_operand" "a")
|
||||
(match_operand:SI 1 "register_operand" "c")]
|
||||
UNSPECV_MWAIT)]
|
||||
"TARGET_PNI"
|
||||
"mwait\t%0, %1"
|
||||
[(set_attr "length" "3")])
|
||||
|
||||
(define_insn "monitor"
|
||||
[(unspec_volatile [(match_operand:SI 0 "register_operand" "a")
|
||||
(match_operand:SI 1 "register_operand" "c")
|
||||
(match_operand:SI 2 "register_operand" "d")]
|
||||
UNSPECV_MONITOR)]
|
||||
"TARGET_PNI"
|
||||
"monitor\t%0, %1, %2"
|
||||
[(set_attr "length" "3")])
|
||||
|
||||
;; PNI arithmetic
|
||||
|
||||
(define_insn "addsubv4sf3"
|
||||
[(set (match_operand:V4SF 0 "register_operand" "=x")
|
||||
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
|
||||
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_ADDSUB))]
|
||||
"TARGET_PNI"
|
||||
"addsubps\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V4SF")])
|
||||
|
||||
(define_insn "addsubv2df3"
|
||||
[(set (match_operand:V2DF 0 "register_operand" "=x")
|
||||
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
|
||||
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_ADDSUB))]
|
||||
"TARGET_PNI"
|
||||
"addsubpd\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V2DF")])
|
||||
|
||||
(define_insn "haddv4sf3"
|
||||
[(set (match_operand:V4SF 0 "register_operand" "=x")
|
||||
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
|
||||
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_HADD))]
|
||||
"TARGET_PNI"
|
||||
"haddps\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V4SF")])
|
||||
|
||||
(define_insn "haddv2df3"
|
||||
[(set (match_operand:V2DF 0 "register_operand" "=x")
|
||||
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
|
||||
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_HADD))]
|
||||
"TARGET_PNI"
|
||||
"haddpd\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V2DF")])
|
||||
|
||||
(define_insn "hsubv4sf3"
|
||||
[(set (match_operand:V4SF 0 "register_operand" "=x")
|
||||
(unspec:V4SF [(match_operand:V4SF 1 "register_operand" "0")
|
||||
(match_operand:V4SF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_HSUB))]
|
||||
"TARGET_PNI"
|
||||
"hsubps\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V4SF")])
|
||||
|
||||
(define_insn "hsubv2df3"
|
||||
[(set (match_operand:V2DF 0 "register_operand" "=x")
|
||||
(unspec:V2DF [(match_operand:V2DF 1 "register_operand" "0")
|
||||
(match_operand:V2DF 2 "nonimmediate_operand" "xm")]
|
||||
UNSPEC_HSUB))]
|
||||
"TARGET_PNI"
|
||||
"hsubpd\t{%2, %0|%0, %2}"
|
||||
[(set_attr "type" "sseadd")
|
||||
(set_attr "mode" "V2DF")])
|
||||
|
||||
(define_insn "movshdup"
|
||||
[(set (match_operand:V4SF 0 "register_operand" "=x")
|
||||
(unspec:V4SF
|
||||
[(match_operand:V4SF 1 "nonimmediate_operand" "xm")] UNSPEC_MOVSHDUP))]
|
||||
"TARGET_PNI"
|
||||
"movshdup\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "sse")
|
||||
(set_attr "mode" "V4SF")])
|
||||
|
||||
(define_insn "movsldup"
|
||||
[(set (match_operand:V4SF 0 "register_operand" "=x")
|
||||
(unspec:V4SF
|
||||
[(match_operand:V4SF 1 "nonimmediate_operand" "xm")] UNSPEC_MOVSLDUP))]
|
||||
"TARGET_PNI"
|
||||
"movsldup\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "sse")
|
||||
(set_attr "mode" "V4SF")])
|
||||
|
||||
(define_insn "lddqu"
|
||||
[(set (match_operand:V16QI 0 "register_operand" "=x")
|
||||
(unspec:V16QI [(match_operand:V16QI 1 "memory_operand" "m")]
|
||||
UNSPEC_LDQQU))]
|
||||
"TARGET_PNI"
|
||||
"lddqu\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "ssecvt")
|
||||
(set_attr "mode" "TI")])
|
||||
|
||||
(define_insn "loadddup"
|
||||
[(set (match_operand:V2DF 0 "register_operand" "=x")
|
||||
(vec_duplicate:V2DF (match_operand:DF 1 "memory_operand" "m")))]
|
||||
"TARGET_PNI"
|
||||
"movddup\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "ssecvt")
|
||||
(set_attr "mode" "DF")])
|
||||
|
||||
(define_insn "movddup"
|
||||
[(set (match_operand:V2DF 0 "register_operand" "=x")
|
||||
(vec_duplicate:V2DF
|
||||
(vec_select:DF (match_operand:V2DF 1 "register_operand" "x")
|
||||
(parallel [(const_int 0)]))))]
|
||||
"TARGET_PNI"
|
||||
"movddup\t{%1, %0|%0, %1}"
|
||||
[(set_attr "type" "ssecvt")
|
||||
(set_attr "mode" "DF")])
|
||||
|
351
contrib/gcc/configure
vendored
351
contrib/gcc/configure
vendored
@ -65,6 +65,11 @@ ac_help="$ac_help
|
||||
--with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib"
|
||||
ac_help="$ac_help
|
||||
--enable-initfini-array use .init_array/.fini_array sections"
|
||||
ac_help="$ac_help
|
||||
--enable-sjlj-exceptions
|
||||
arrange to use setjmp/longjmp exception handling"
|
||||
ac_help="$ac_help
|
||||
--enable-libunwind-exceptions force use libunwind for exceptions"
|
||||
ac_help="$ac_help
|
||||
--enable-nls use Native Language Support (default)"
|
||||
ac_help="$ac_help
|
||||
@ -90,11 +95,6 @@ ac_help="$ac_help
|
||||
--enable-maintainer-mode
|
||||
enable make rules and dependencies not useful
|
||||
(and sometimes confusing) to the casual installer"
|
||||
ac_help="$ac_help
|
||||
--enable-sjlj-exceptions
|
||||
arrange to use setjmp/longjmp exception handling"
|
||||
ac_help="$ac_help
|
||||
--enable-libunwind-exceptions force use libunwind for exceptions"
|
||||
ac_help="$ac_help
|
||||
--enable-version-specific-runtime-libs
|
||||
specify that runtime libraries should be
|
||||
@ -3928,7 +3928,7 @@ else
|
||||
# Systems known to be in this category are Windows (all variants),
|
||||
# VMS, and Darwin.
|
||||
case "$host_os" in
|
||||
vms* | cygwin* | pe | mingw* | darwin*)
|
||||
vms* | cygwin* | pe | mingw* | darwin* | ultrix* | hpux10* | hpux11.00)
|
||||
gcc_cv_func_mmap_dev_zero=no ;;
|
||||
*)
|
||||
gcc_cv_func_mmap_dev_zero=yes;;
|
||||
@ -4856,6 +4856,71 @@ objext='.o'
|
||||
|
||||
|
||||
|
||||
# With Setjmp/Longjmp based exception handling.
|
||||
# Check whether --enable-sjlj-exceptions or --disable-sjlj-exceptions was given.
|
||||
if test "${enable_sjlj_exceptions+set}" = set; then
|
||||
enableval="$enable_sjlj_exceptions"
|
||||
sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi`
|
||||
cat >> confdefs.h <<EOF
|
||||
#define CONFIG_SJLJ_EXCEPTIONS $sjlj
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
|
||||
echo $ac_n "checking for main in -lunwind""... $ac_c" 1>&6
|
||||
echo "configure:4873: checking for main in -lunwind" >&5
|
||||
ac_lib_var=`echo unwind'_'main | sed 'y%./+-%__p_%'`
|
||||
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
ac_save_LIBS="$LIBS"
|
||||
LIBS="-lunwind $LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 4881 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
int main() {
|
||||
main()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:4888: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_lib_$ac_lib_var=yes"
|
||||
else
|
||||
echo "configure: failed program was:" >&5
|
||||
cat conftest.$ac_ext >&5
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_lib_$ac_lib_var=no"
|
||||
fi
|
||||
rm -f conftest*
|
||||
LIBS="$ac_save_LIBS"
|
||||
|
||||
fi
|
||||
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
|
||||
echo "$ac_t""yes" 1>&6
|
||||
use_libunwind_default=yes
|
||||
else
|
||||
echo "$ac_t""no" 1>&6
|
||||
use_libunwind_default=no
|
||||
fi
|
||||
|
||||
# Use libunwind based exception handling.
|
||||
# Check whether --enable-libunwind-exceptions or --disable-libunwind-exceptions was given.
|
||||
if test "${enable_libunwind_exceptions+set}" = set; then
|
||||
enableval="$enable_libunwind_exceptions"
|
||||
use_libunwind_exceptions=$enableval
|
||||
else
|
||||
use_libunwind_exceptions=$use_libunwind_default
|
||||
fi
|
||||
|
||||
if test x"$use_libunwind_exceptions" = xyes; then
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define USE_LIBUNWIND_EXCEPTIONS 1
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
target_gtfiles=
|
||||
build_xm_file=
|
||||
build_xm_defines=
|
||||
@ -5097,14 +5162,14 @@ fi
|
||||
|
||||
|
||||
echo $ac_n "checking for library containing strerror""... $ac_c" 1>&6
|
||||
echo "configure:5101: checking for library containing strerror" >&5
|
||||
echo "configure:5166: checking for library containing strerror" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_search_strerror'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
ac_func_search_save_LIBS="$LIBS"
|
||||
ac_cv_search_strerror="no"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5108 "configure"
|
||||
#line 5173 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
@ -5115,7 +5180,7 @@ int main() {
|
||||
strerror()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5119: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5184: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_search_strerror="none required"
|
||||
else
|
||||
@ -5126,7 +5191,7 @@ rm -f conftest*
|
||||
test "$ac_cv_search_strerror" = "no" && for i in cposix; do
|
||||
LIBS="-l$i $ac_func_search_save_LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5130 "configure"
|
||||
#line 5195 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
@ -5137,7 +5202,7 @@ int main() {
|
||||
strerror()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5141: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5206: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_search_strerror="-l$i"
|
||||
break
|
||||
@ -5160,12 +5225,12 @@ fi
|
||||
|
||||
|
||||
echo $ac_n "checking for working const""... $ac_c" 1>&6
|
||||
echo "configure:5164: checking for working const" >&5
|
||||
echo "configure:5229: checking for working const" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5169 "configure"
|
||||
#line 5234 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
int main() {
|
||||
@ -5214,7 +5279,7 @@ ccp = (char const *const *) p;
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5218: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:5283: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
ac_cv_c_const=yes
|
||||
else
|
||||
@ -5235,12 +5300,12 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for off_t""... $ac_c" 1>&6
|
||||
echo "configure:5239: checking for off_t" >&5
|
||||
echo "configure:5304: checking for off_t" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5244 "configure"
|
||||
#line 5309 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#if STDC_HEADERS
|
||||
@ -5268,12 +5333,12 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for size_t""... $ac_c" 1>&6
|
||||
echo "configure:5272: checking for size_t" >&5
|
||||
echo "configure:5337: checking for size_t" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5277 "configure"
|
||||
#line 5342 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <sys/types.h>
|
||||
#if STDC_HEADERS
|
||||
@ -5303,19 +5368,19 @@ fi
|
||||
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
|
||||
# for constant arguments. Useless!
|
||||
echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
|
||||
echo "configure:5307: checking for working alloca.h" >&5
|
||||
echo "configure:5372: checking for working alloca.h" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5312 "configure"
|
||||
#line 5377 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <alloca.h>
|
||||
int main() {
|
||||
char *p = alloca(2 * sizeof(int));
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5384: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_header_alloca_h=yes
|
||||
else
|
||||
@ -5336,12 +5401,12 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for alloca""... $ac_c" 1>&6
|
||||
echo "configure:5340: checking for alloca" >&5
|
||||
echo "configure:5405: checking for alloca" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5345 "configure"
|
||||
#line 5410 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#ifdef __GNUC__
|
||||
@ -5369,7 +5434,7 @@ int main() {
|
||||
char *p = (char *) alloca(1);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5373: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5438: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_func_alloca_works=yes
|
||||
else
|
||||
@ -5401,12 +5466,12 @@ EOF
|
||||
|
||||
|
||||
echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
|
||||
echo "configure:5405: checking whether alloca needs Cray hooks" >&5
|
||||
echo "configure:5470: checking whether alloca needs Cray hooks" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5410 "configure"
|
||||
#line 5475 "configure"
|
||||
#include "confdefs.h"
|
||||
#if defined(CRAY) && ! defined(CRAY2)
|
||||
webecray
|
||||
@ -5431,12 +5496,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
|
||||
if test $ac_cv_os_cray = yes; then
|
||||
for ac_func in _getb67 GETB67 getb67; do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:5435: checking for $ac_func" >&5
|
||||
echo "configure:5500: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5440 "configure"
|
||||
#line 5505 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
@ -5459,7 +5524,7 @@ $ac_func();
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5528: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
@ -5486,7 +5551,7 @@ done
|
||||
fi
|
||||
|
||||
echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
|
||||
echo "configure:5490: checking stack direction for C alloca" >&5
|
||||
echo "configure:5555: checking stack direction for C alloca" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -5494,7 +5559,7 @@ else
|
||||
ac_cv_c_stack_direction=0
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5498 "configure"
|
||||
#line 5563 "configure"
|
||||
#include "confdefs.h"
|
||||
find_stack_direction ()
|
||||
{
|
||||
@ -5513,7 +5578,7 @@ main ()
|
||||
exit (find_stack_direction() < 0);
|
||||
}
|
||||
EOF
|
||||
if { (eval echo configure:5517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
|
||||
if { (eval echo configure:5582: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
|
||||
then
|
||||
ac_cv_c_stack_direction=1
|
||||
else
|
||||
@ -5536,12 +5601,12 @@ fi
|
||||
|
||||
|
||||
echo $ac_n "checking whether we are using the GNU C Library 2.1 or newer""... $ac_c" 1>&6
|
||||
echo "configure:5540: checking whether we are using the GNU C Library 2.1 or newer" >&5
|
||||
echo "configure:5605: checking whether we are using the GNU C Library 2.1 or newer" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_gnu_library_2_1'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5545 "configure"
|
||||
#line 5610 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#include <features.h>
|
||||
@ -5577,17 +5642,17 @@ stdlib.h string.h unistd.h sys/param.h
|
||||
do
|
||||
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
|
||||
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
|
||||
echo "configure:5581: checking for $ac_hdr" >&5
|
||||
echo "configure:5646: checking for $ac_hdr" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5586 "configure"
|
||||
#line 5651 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <$ac_hdr>
|
||||
EOF
|
||||
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
|
||||
{ (eval echo configure:5591: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
{ (eval echo configure:5656: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
|
||||
if test -z "$ac_err"; then
|
||||
rm -rf conftest*
|
||||
@ -5618,12 +5683,12 @@ getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \
|
||||
strdup strtoul tsearch __argz_count __argz_stringify __argz_next
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:5622: checking for $ac_func" >&5
|
||||
echo "configure:5687: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5627 "configure"
|
||||
#line 5692 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
@ -5646,7 +5711,7 @@ $ac_func();
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5650: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5715: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
@ -5687,7 +5752,7 @@ fi
|
||||
|
||||
|
||||
echo $ac_n "checking for iconv""... $ac_c" 1>&6
|
||||
echo "configure:5691: checking for iconv" >&5
|
||||
echo "configure:5756: checking for iconv" >&5
|
||||
if eval "test \"`echo '$''{'am_cv_func_iconv'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -5695,7 +5760,7 @@ else
|
||||
am_cv_func_iconv="no, consider installing GNU libiconv"
|
||||
am_cv_lib_iconv=no
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5699 "configure"
|
||||
#line 5764 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdlib.h>
|
||||
#include <iconv.h>
|
||||
@ -5705,7 +5770,7 @@ iconv_t cd = iconv_open("","");
|
||||
iconv_close(cd);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5774: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
am_cv_func_iconv=yes
|
||||
else
|
||||
@ -5717,7 +5782,7 @@ rm -f conftest*
|
||||
am_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS $am_cv_libiconv_ldpath -liconv"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5721 "configure"
|
||||
#line 5786 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <stdlib.h>
|
||||
#include <iconv.h>
|
||||
@ -5727,7 +5792,7 @@ iconv_t cd = iconv_open("","");
|
||||
iconv_close(cd);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5731: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5796: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
am_cv_lib_iconv=yes
|
||||
am_cv_func_iconv=yes
|
||||
@ -5748,13 +5813,13 @@ echo "$ac_t""$am_cv_func_iconv" 1>&6
|
||||
EOF
|
||||
|
||||
echo $ac_n "checking for iconv declaration""... $ac_c" 1>&6
|
||||
echo "configure:5752: checking for iconv declaration" >&5
|
||||
echo "configure:5817: checking for iconv declaration" >&5
|
||||
if eval "test \"`echo '$''{'am_cv_proto_iconv'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5758 "configure"
|
||||
#line 5823 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#include <stdlib.h>
|
||||
@ -5773,7 +5838,7 @@ int main() {
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5777: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
if { (eval echo configure:5842: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
|
||||
rm -rf conftest*
|
||||
am_cv_proto_iconv_arg1=""
|
||||
else
|
||||
@ -5802,19 +5867,19 @@ EOF
|
||||
|
||||
|
||||
echo $ac_n "checking for nl_langinfo and CODESET""... $ac_c" 1>&6
|
||||
echo "configure:5806: checking for nl_langinfo and CODESET" >&5
|
||||
echo "configure:5871: checking for nl_langinfo and CODESET" >&5
|
||||
if eval "test \"`echo '$''{'am_cv_langinfo_codeset'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5811 "configure"
|
||||
#line 5876 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <langinfo.h>
|
||||
int main() {
|
||||
char* cs = nl_langinfo(CODESET);
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5818: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
am_cv_langinfo_codeset=yes
|
||||
else
|
||||
@ -5837,19 +5902,19 @@ EOF
|
||||
|
||||
if test $ac_cv_header_locale_h = yes; then
|
||||
echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
|
||||
echo "configure:5841: checking for LC_MESSAGES" >&5
|
||||
echo "configure:5906: checking for LC_MESSAGES" >&5
|
||||
if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5846 "configure"
|
||||
#line 5911 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <locale.h>
|
||||
int main() {
|
||||
return LC_MESSAGES
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5853: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:5918: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
am_cv_val_LC_MESSAGES=yes
|
||||
else
|
||||
@ -5870,7 +5935,7 @@ EOF
|
||||
fi
|
||||
fi
|
||||
echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
|
||||
echo "configure:5874: checking whether NLS is requested" >&5
|
||||
echo "configure:5939: checking whether NLS is requested" >&5
|
||||
# Check whether --enable-nls or --disable-nls was given.
|
||||
if test "${enable_nls+set}" = set; then
|
||||
enableval="$enable_nls"
|
||||
@ -5893,7 +5958,7 @@ fi
|
||||
EOF
|
||||
|
||||
echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
|
||||
echo "configure:5897: checking whether included gettext is requested" >&5
|
||||
echo "configure:5962: checking whether included gettext is requested" >&5
|
||||
# Check whether --with-included-gettext or --without-included-gettext was given.
|
||||
if test "${with_included_gettext+set}" = set; then
|
||||
withval="$with_included_gettext"
|
||||
@ -5913,17 +5978,17 @@ fi
|
||||
|
||||
ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
|
||||
echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
|
||||
echo "configure:5917: checking for libintl.h" >&5
|
||||
echo "configure:5982: checking for libintl.h" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5922 "configure"
|
||||
#line 5987 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <libintl.h>
|
||||
EOF
|
||||
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
|
||||
{ (eval echo configure:5927: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
{ (eval echo configure:5992: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
||||
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
|
||||
if test -z "$ac_err"; then
|
||||
rm -rf conftest*
|
||||
@ -5944,12 +6009,12 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
|
||||
EOF
|
||||
|
||||
echo $ac_n "checking for GNU gettext in libc""... $ac_c" 1>&6
|
||||
echo "configure:5948: checking for GNU gettext in libc" >&5
|
||||
echo "configure:6013: checking for GNU gettext in libc" >&5
|
||||
if eval "test \"`echo '$''{'gt_cv_func_gnugettext1_libc'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5953 "configure"
|
||||
#line 6018 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <libintl.h>
|
||||
extern int _nl_msg_cat_cntr;
|
||||
@ -5958,7 +6023,7 @@ bindtextdomain ("", "");
|
||||
return (int) gettext ("") + _nl_msg_cat_cntr
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5962: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:6027: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
gt_cv_func_gnugettext1_libc=yes
|
||||
else
|
||||
@ -5974,14 +6039,14 @@ echo "$ac_t""$gt_cv_func_gnugettext1_libc" 1>&6
|
||||
|
||||
if test "$gt_cv_func_gnugettext1_libc" != "yes"; then
|
||||
echo $ac_n "checking for GNU gettext in libintl""... $ac_c" 1>&6
|
||||
echo "configure:5978: checking for GNU gettext in libintl" >&5
|
||||
echo "configure:6043: checking for GNU gettext in libintl" >&5
|
||||
if eval "test \"`echo '$''{'gt_cv_func_gnugettext1_libintl'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
gt_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS -lintl $LIBICONV"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 5985 "configure"
|
||||
#line 6050 "configure"
|
||||
#include "confdefs.h"
|
||||
#include <libintl.h>
|
||||
extern int _nl_msg_cat_cntr;
|
||||
@ -5990,7 +6055,7 @@ bindtextdomain ("", "");
|
||||
return (int) gettext ("") + _nl_msg_cat_cntr
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:5994: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:6059: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
gt_cv_func_gnugettext1_libintl=yes
|
||||
else
|
||||
@ -6023,12 +6088,12 @@ EOF
|
||||
for ac_func in dcgettext
|
||||
do
|
||||
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
|
||||
echo "configure:6027: checking for $ac_func" >&5
|
||||
echo "configure:6092: checking for $ac_func" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 6032 "configure"
|
||||
#line 6097 "configure"
|
||||
#include "confdefs.h"
|
||||
/* System header to define __stub macros and hopefully few prototypes,
|
||||
which can conflict with char $ac_func(); below. */
|
||||
@ -6051,7 +6116,7 @@ $ac_func();
|
||||
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:6055: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:6120: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
eval "ac_cv_func_$ac_func=yes"
|
||||
else
|
||||
@ -6080,7 +6145,7 @@ done
|
||||
# Extract the first word of "msgfmt", so it can be a program name with args.
|
||||
set dummy msgfmt; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6084: checking for $ac_word" >&5
|
||||
echo "configure:6149: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6114,7 +6179,7 @@ fi
|
||||
# Extract the first word of "gmsgfmt", so it can be a program name with args.
|
||||
set dummy gmsgfmt; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6118: checking for $ac_word" >&5
|
||||
echo "configure:6183: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6151,7 +6216,7 @@ fi
|
||||
# Extract the first word of "xgettext", so it can be a program name with args.
|
||||
set dummy xgettext; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6155: checking for $ac_word" >&5
|
||||
echo "configure:6220: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6201,7 +6266,7 @@ fi
|
||||
# Extract the first word of "msgfmt", so it can be a program name with args.
|
||||
set dummy msgfmt; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6205: checking for $ac_word" >&5
|
||||
echo "configure:6270: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6235,7 +6300,7 @@ fi
|
||||
# Extract the first word of "gmsgfmt", so it can be a program name with args.
|
||||
set dummy gmsgfmt; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6239: checking for $ac_word" >&5
|
||||
echo "configure:6304: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6271,7 +6336,7 @@ fi
|
||||
# Extract the first word of "xgettext", so it can be a program name with args.
|
||||
set dummy xgettext; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6275: checking for $ac_word" >&5
|
||||
echo "configure:6340: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6343,7 +6408,7 @@ do
|
||||
# Extract the first word of "$ac_prog", so it can be a program name with args.
|
||||
set dummy $ac_prog; ac_word=$2
|
||||
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
|
||||
echo "configure:6347: checking for $ac_word" >&5
|
||||
echo "configure:6412: checking for $ac_word" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_prog_INTLBISON'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -6376,7 +6441,7 @@ done
|
||||
ac_verc_fail=yes
|
||||
else
|
||||
echo $ac_n "checking version of bison""... $ac_c" 1>&6
|
||||
echo "configure:6380: checking version of bison" >&5
|
||||
echo "configure:6445: checking version of bison" >&5
|
||||
ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
|
||||
case $ac_prog_version in
|
||||
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
|
||||
@ -6421,7 +6486,7 @@ EOF
|
||||
|
||||
if test "x$CATOBJEXT" != x; then
|
||||
echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
|
||||
echo "configure:6425: checking for catalogs to be installed" >&5
|
||||
echo "configure:6490: checking for catalogs to be installed" >&5
|
||||
# Look for .po and .gmo files in the source directory.
|
||||
CATALOGS=
|
||||
XLINGUAS=
|
||||
@ -6479,7 +6544,7 @@ fi
|
||||
case $host_os in
|
||||
win32 | pe | cygwin* | mingw32* | uwin*)
|
||||
echo $ac_n "checking whether windows registry support is requested""... $ac_c" 1>&6
|
||||
echo "configure:6483: checking whether windows registry support is requested" >&5
|
||||
echo "configure:6548: checking whether windows registry support is requested" >&5
|
||||
if test "x$enable_win32_registry" != xno; then
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define ENABLE_WIN32_REGISTRY 1
|
||||
@ -6488,14 +6553,14 @@ EOF
|
||||
echo "$ac_t""yes" 1>&6
|
||||
|
||||
echo $ac_n "checking for library containing RegOpenKeyExA""... $ac_c" 1>&6
|
||||
echo "configure:6492: checking for library containing RegOpenKeyExA" >&5
|
||||
echo "configure:6557: checking for library containing RegOpenKeyExA" >&5
|
||||
if eval "test \"`echo '$''{'ac_cv_search_RegOpenKeyExA'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
ac_func_search_save_LIBS="$LIBS"
|
||||
ac_cv_search_RegOpenKeyExA="no"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 6499 "configure"
|
||||
#line 6564 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
@ -6506,7 +6571,7 @@ int main() {
|
||||
RegOpenKeyExA()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:6510: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:6575: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_search_RegOpenKeyExA="none required"
|
||||
else
|
||||
@ -6517,7 +6582,7 @@ rm -f conftest*
|
||||
test "$ac_cv_search_RegOpenKeyExA" = "no" && for i in advapi32; do
|
||||
LIBS="-l$i $ac_func_search_save_LIBS"
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 6521 "configure"
|
||||
#line 6586 "configure"
|
||||
#include "confdefs.h"
|
||||
/* Override any gcc2 internal prototype to avoid an error. */
|
||||
/* We use char because int might match the return type of a gcc2
|
||||
@ -6528,7 +6593,7 @@ int main() {
|
||||
RegOpenKeyExA()
|
||||
; return 0; }
|
||||
EOF
|
||||
if { (eval echo configure:6532: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
if { (eval echo configure:6597: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
||||
rm -rf conftest*
|
||||
ac_cv_search_RegOpenKeyExA="-l$i"
|
||||
break
|
||||
@ -6570,7 +6635,7 @@ esac
|
||||
|
||||
if test "x$enable_win32_registry" != xno; then
|
||||
echo $ac_n "checking registry key on windows hosts""... $ac_c" 1>&6
|
||||
echo "configure:6574: checking registry key on windows hosts" >&5
|
||||
echo "configure:6639: checking registry key on windows hosts" >&5
|
||||
cat >> confdefs.h <<EOF
|
||||
#define WIN32_REGISTRY_KEY "$gcc_cv_win32_registry_key"
|
||||
EOF
|
||||
@ -6784,7 +6849,7 @@ fi
|
||||
|
||||
# Figure out what assembler we will be using.
|
||||
echo $ac_n "checking what assembler to use""... $ac_c" 1>&6
|
||||
echo "configure:6788: checking what assembler to use" >&5
|
||||
echo "configure:6853: checking what assembler to use" >&5
|
||||
gcc_cv_as=
|
||||
gcc_cv_gas_major_version=
|
||||
gcc_cv_gas_minor_version=
|
||||
@ -6878,7 +6943,7 @@ fi
|
||||
|
||||
# Figure out what linker we will be using.
|
||||
echo $ac_n "checking what linker to use""... $ac_c" 1>&6
|
||||
echo "configure:6882: checking what linker to use" >&5
|
||||
echo "configure:6947: checking what linker to use" >&5
|
||||
gcc_cv_ld=
|
||||
gcc_cv_gld_major_version=
|
||||
gcc_cv_gld_minor_version=
|
||||
@ -6971,7 +7036,7 @@ fi
|
||||
|
||||
# Figure out what nm we will be using.
|
||||
echo $ac_n "checking what nm to use""... $ac_c" 1>&6
|
||||
echo "configure:6975: checking what nm to use" >&5
|
||||
echo "configure:7040: checking what nm to use" >&5
|
||||
if test -x nm$host_exeext; then
|
||||
gcc_cv_nm=./nm$host_exeext
|
||||
elif test "x$program_prefix" != xNONE; then
|
||||
@ -6983,7 +7048,7 @@ echo "$ac_t""$gcc_cv_nm" 1>&6
|
||||
|
||||
# Figure out what objdump we will be using.
|
||||
echo $ac_n "checking what objdump to use""... $ac_c" 1>&6
|
||||
echo "configure:6987: checking what objdump to use" >&5
|
||||
echo "configure:7052: checking what objdump to use" >&5
|
||||
if test -x objdump$host_exeext; then
|
||||
gcc_cv_objdump=./objdump$host_exeext
|
||||
elif test "x$program_prefix" != xNONE; then
|
||||
@ -6995,7 +7060,7 @@ echo "$ac_t""$gcc_cv_objdump" 1>&6
|
||||
|
||||
# Figure out what assembler alignment features are present.
|
||||
echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6
|
||||
echo "configure:6999: checking assembler alignment features" >&5
|
||||
echo "configure:7064: checking assembler alignment features" >&5
|
||||
gcc_cv_as_alignment_features=none
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
# Gas version 2.6 and later support for .balign and .p2align.
|
||||
@ -7043,7 +7108,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_alignment_features" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler subsection support""... $ac_c" 1>&6
|
||||
echo "configure:7047: checking assembler subsection support" >&5
|
||||
echo "configure:7112: checking assembler subsection support" >&5
|
||||
gcc_cv_as_subsections=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
|
||||
@ -7083,7 +7148,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_subsections" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler weak support""... $ac_c" 1>&6
|
||||
echo "configure:7087: checking assembler weak support" >&5
|
||||
echo "configure:7152: checking assembler weak support" >&5
|
||||
gcc_cv_as_weak=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 2 -o "$gcc_cv_gas_major_version" -gt 2; then
|
||||
@ -7106,7 +7171,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_weak" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler hidden support""... $ac_c" 1>&6
|
||||
echo "configure:7110: checking assembler hidden support" >&5
|
||||
echo "configure:7175: checking assembler hidden support" >&5
|
||||
gcc_cv_as_hidden=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 \
|
||||
@ -7156,6 +7221,9 @@ elif test x$gcc_cv_as != x; then
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
else
|
||||
# non-GNU linkers don't seem to support .hidden yet
|
||||
gcc_cv_as_hidden=no
|
||||
fi
|
||||
fi
|
||||
if test x"$gcc_cv_as_hidden" = xyes; then
|
||||
@ -7166,23 +7234,10 @@ EOF
|
||||
fi
|
||||
echo "$ac_t""$gcc_cv_as_hidden" 1>&6
|
||||
libgcc_visibility=$gcc_cv_as_hidden
|
||||
case "$target" in
|
||||
mips-sgi-irix6*)
|
||||
if test x"$gnu_ld_flag" = x"no"; then
|
||||
# Even if using gas with .hidden support, the resulting object files
|
||||
# cannot be linked with the IRIX 6 O32 linker. With the N32 and
|
||||
# N64 linkers, the problem is that the linker refuses to accept
|
||||
# -call_shared (passed by default to the linker) and -r (used to
|
||||
# link the object file generated without .hidden directives with
|
||||
# one that hides symbols), so we also lose.
|
||||
libgcc_visibility=no
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
|
||||
echo $ac_n "checking assembler leb128 support""... $ac_c" 1>&6
|
||||
echo "configure:7186: checking assembler leb128 support" >&5
|
||||
echo "configure:7241: checking assembler leb128 support" >&5
|
||||
gcc_cv_as_leb128=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 11 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
|
||||
@ -7227,7 +7282,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_leb128" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler eh_frame optimization""... $ac_c" 1>&6
|
||||
echo "configure:7231: checking assembler eh_frame optimization" >&5
|
||||
echo "configure:7286: checking assembler eh_frame optimization" >&5
|
||||
gcc_cv_as_eh_frame=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 12 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
|
||||
@ -7308,7 +7363,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_eh_frame" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler section merging support""... $ac_c" 1>&6
|
||||
echo "configure:7312: checking assembler section merging support" >&5
|
||||
echo "configure:7367: checking assembler section merging support" >&5
|
||||
gcc_cv_as_shf_merge=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 12 -o "$gcc_cv_gas_major_version" -gt 2 && grep 'obj_format = elf' ../gas/Makefile > /dev/null; then
|
||||
@ -7331,7 +7386,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_shf_merge" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler thread-local storage support""... $ac_c" 1>&6
|
||||
echo "configure:7335: checking assembler thread-local storage support" >&5
|
||||
echo "configure:7390: checking assembler thread-local storage support" >&5
|
||||
gcc_cv_as_tls=no
|
||||
conftest_s=
|
||||
tls_first_major=
|
||||
@ -7474,7 +7529,7 @@ case "$target" in
|
||||
# All TARGET_ABI_OSF targets.
|
||||
alpha*-*-osf* | alpha*-*-linux* | alpha*-*-*bsd*)
|
||||
echo $ac_n "checking assembler supports explicit relocations""... $ac_c" 1>&6
|
||||
echo "configure:7478: checking assembler supports explicit relocations" >&5
|
||||
echo "configure:7533: checking assembler supports explicit relocations" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_explicit_relocs'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7524,7 +7579,7 @@ EOF
|
||||
;;
|
||||
sparc*-*-*)
|
||||
echo $ac_n "checking assembler .register pseudo-op support""... $ac_c" 1>&6
|
||||
echo "configure:7528: checking assembler .register pseudo-op support" >&5
|
||||
echo "configure:7583: checking assembler .register pseudo-op support" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_register_pseudo_op'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7552,7 +7607,7 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking assembler supports -relax""... $ac_c" 1>&6
|
||||
echo "configure:7556: checking assembler supports -relax" >&5
|
||||
echo "configure:7611: checking assembler supports -relax" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_relax_opt'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7580,7 +7635,7 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking assembler and linker support unaligned pc related relocs""... $ac_c" 1>&6
|
||||
echo "configure:7584: checking assembler and linker support unaligned pc related relocs" >&5
|
||||
echo "configure:7639: checking assembler and linker support unaligned pc related relocs" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_sparc_ua_pcrel'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7607,7 +7662,7 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking assembler and linker support unaligned pc related relocs against hidden symbols""... $ac_c" 1>&6
|
||||
echo "configure:7611: checking assembler and linker support unaligned pc related relocs against hidden symbols" >&5
|
||||
echo "configure:7666: checking assembler and linker support unaligned pc related relocs against hidden symbols" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_sparc_ua_pcrel_hidden'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7647,7 +7702,7 @@ EOF
|
||||
fi
|
||||
|
||||
echo $ac_n "checking for assembler offsetable %lo() support""... $ac_c" 1>&6
|
||||
echo "configure:7651: checking for assembler offsetable %lo() support" >&5
|
||||
echo "configure:7706: checking for assembler offsetable %lo() support" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_offsetable_lo10'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7686,7 +7741,7 @@ EOF
|
||||
|
||||
i[34567]86-*-* | x86_64-*-*)
|
||||
echo $ac_n "checking assembler instructions""... $ac_c" 1>&6
|
||||
echo "configure:7690: checking assembler instructions" >&5
|
||||
echo "configure:7745: checking assembler instructions" >&5
|
||||
gcc_cv_as_instructions=
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x; then
|
||||
if test "$gcc_cv_gas_major_version" -eq 2 -a "$gcc_cv_gas_minor_version" -ge 9 -o "$gcc_cv_gas_major_version" -gt 2; then
|
||||
@ -7712,8 +7767,26 @@ EOF
|
||||
fi
|
||||
echo "$ac_t""$gcc_cv_as_instructions" 1>&6
|
||||
|
||||
echo $ac_n "checking cmov syntax""... $ac_c" 1>&6
|
||||
echo "configure:7772: checking cmov syntax" >&5
|
||||
gcc_cv_as_ix86_cmov_sun_syntax=no
|
||||
if test x$gcc_cv_as != x; then
|
||||
echo 'cmovl.l %edx, %eax' > conftest.s
|
||||
if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
|
||||
gcc_cv_as_ix86_cmov_sun_syntax=yes
|
||||
fi
|
||||
rm -f conftest.s conftest.o
|
||||
fi
|
||||
if test "x$gcc_cv_as_ix86_cmov_sun_syntax" = xyes; then
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define HAVE_AS_IX86_CMOV_SUN_SYNTAX 1
|
||||
EOF
|
||||
|
||||
fi
|
||||
echo "$ac_t""$gcc_cv_as_ix86_cmov_sun_syntax" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler GOTOFF in data directives""... $ac_c" 1>&6
|
||||
echo "configure:7717: checking assembler GOTOFF in data directives" >&5
|
||||
echo "configure:7790: checking assembler GOTOFF in data directives" >&5
|
||||
gcc_cv_as_gotoff_in_data=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x
|
||||
then
|
||||
@ -7743,7 +7816,7 @@ EOF
|
||||
|
||||
ia64*-*-*)
|
||||
echo $ac_n "checking assembler supports ltoffx and ldxmov""... $ac_c" 1>&6
|
||||
echo "configure:7747: checking assembler supports ltoffx and ldxmov" >&5
|
||||
echo "configure:7820: checking assembler supports ltoffx and ldxmov" >&5
|
||||
if eval "test \"`echo '$''{'gcc_cv_as_ltoffx_ldxmov_relocs'+set}'`\" = set"; then
|
||||
echo $ac_n "(cached) $ac_c" 1>&6
|
||||
else
|
||||
@ -7785,7 +7858,7 @@ EOF
|
||||
esac
|
||||
|
||||
echo $ac_n "checking assembler dwarf2 debug_line support""... $ac_c" 1>&6
|
||||
echo "configure:7789: checking assembler dwarf2 debug_line support" >&5
|
||||
echo "configure:7862: checking assembler dwarf2 debug_line support" >&5
|
||||
gcc_cv_as_dwarf2_debug_line=no
|
||||
# ??? Not all targets support dwarf2 debug_line, even within a version
|
||||
# of gas. Moreover, we need to emit a valid instruction to trigger any
|
||||
@ -7842,7 +7915,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_dwarf2_debug_line" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler --gdwarf2 support""... $ac_c" 1>&6
|
||||
echo "configure:7846: checking assembler --gdwarf2 support" >&5
|
||||
echo "configure:7919: checking assembler --gdwarf2 support" >&5
|
||||
gcc_cv_as_gdwarf2_flag=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x;
|
||||
then
|
||||
@ -7871,7 +7944,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_gdwarf2_flag" 1>&6
|
||||
|
||||
echo $ac_n "checking assembler --gstabs support""... $ac_c" 1>&6
|
||||
echo "configure:7875: checking assembler --gstabs support" >&5
|
||||
echo "configure:7948: checking assembler --gstabs support" >&5
|
||||
gcc_cv_as_gstabs_flag=no
|
||||
if test x$gcc_cv_gas_major_version != x -a x$gcc_cv_gas_minor_version != x;
|
||||
then
|
||||
@ -7906,7 +7979,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_as_gstabs_flag" 1>&6
|
||||
|
||||
echo $ac_n "checking linker read-only and read-write section mixing""... $ac_c" 1>&6
|
||||
echo "configure:7910: checking linker read-only and read-write section mixing" >&5
|
||||
echo "configure:7983: checking linker read-only and read-write section mixing" >&5
|
||||
gcc_cv_ld_ro_rw_mix=unknown
|
||||
if test x$gcc_cv_gld_major_version != x -a x$gcc_cv_gld_minor_version != x; then
|
||||
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 10 -o "$gcc_cv_gld_major_version" -gt 2 && grep 'EMUL = elf' ../ld/Makefile > /dev/null; then
|
||||
@ -7944,7 +8017,7 @@ fi
|
||||
echo "$ac_t""$gcc_cv_ld_ro_rw_mix" 1>&6
|
||||
|
||||
echo $ac_n "checking linker PT_GNU_EH_FRAME support""... $ac_c" 1>&6
|
||||
echo "configure:7948: checking linker PT_GNU_EH_FRAME support" >&5
|
||||
echo "configure:8021: checking linker PT_GNU_EH_FRAME support" >&5
|
||||
gcc_cv_ld_eh_frame_hdr=no
|
||||
if test x$gcc_cv_gld_major_version != x -a x$gcc_cv_gld_minor_version != x; then
|
||||
if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 12 -o "$gcc_cv_gld_major_version" -gt 2 && grep 'EMUL = elf' ../ld/Makefile > /dev/null; then
|
||||
@ -7968,7 +8041,7 @@ echo "$ac_t""$gcc_cv_ld_eh_frame_hdr" 1>&6
|
||||
case "$target" in
|
||||
mips*-*-*)
|
||||
echo $ac_n "checking whether libgloss uses STARTUP directives consistently""... $ac_c" 1>&6
|
||||
echo "configure:7972: checking whether libgloss uses STARTUP directives consistently" >&5
|
||||
echo "configure:8045: checking whether libgloss uses STARTUP directives consistently" >&5
|
||||
gcc_cv_mips_libgloss_startup=no
|
||||
gcc_cv_libgloss_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/libgloss
|
||||
if test "x$exec_prefix" = xNONE; then
|
||||
@ -8172,7 +8245,7 @@ fi
|
||||
|
||||
|
||||
echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6
|
||||
echo "configure:8176: checking whether to enable maintainer-specific portions of Makefiles" >&5
|
||||
echo "configure:8249: checking whether to enable maintainer-specific portions of Makefiles" >&5
|
||||
# Check whether --enable-maintainer-mode or --disable-maintainer-mode was given.
|
||||
if test "${enable_maintainer_mode+set}" = set; then
|
||||
enableval="$enable_maintainer_mode"
|
||||
@ -8190,34 +8263,6 @@ else
|
||||
MAINT='#'
|
||||
fi
|
||||
|
||||
# With Setjmp/Longjmp based exception handling.
|
||||
# Check whether --enable-sjlj-exceptions or --disable-sjlj-exceptions was given.
|
||||
if test "${enable_sjlj_exceptions+set}" = set; then
|
||||
enableval="$enable_sjlj_exceptions"
|
||||
sjlj=`if test $enableval = yes; then echo 1; else echo 0; fi`
|
||||
cat >> confdefs.h <<EOF
|
||||
#define CONFIG_SJLJ_EXCEPTIONS $sjlj
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
|
||||
# Use libunwind based exception handling.
|
||||
# Check whether --enable-libunwind-exceptions or --disable-libunwind-exceptions was given.
|
||||
if test "${enable_libunwind_exceptions+set}" = set; then
|
||||
enableval="$enable_libunwind_exceptions"
|
||||
use_libunwind_exceptions=$enableval
|
||||
else
|
||||
use_libunwind_exceptions=no
|
||||
fi
|
||||
|
||||
if test x"$use_libunwind_exceptions" = xyes; then
|
||||
cat >> confdefs.h <<\EOF
|
||||
#define USE_LIBUNWIND_EXCEPTIONS 1
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
# Make empty files to contain the specs and options for each language.
|
||||
# Then add #include lines to for a compiler that has specs and/or options.
|
||||
|
||||
|
@ -524,7 +524,7 @@ dbxout_typedefs (syms)
|
||||
tree type = TREE_TYPE (syms);
|
||||
if (TYPE_NAME (type)
|
||||
&& TREE_CODE (TYPE_NAME (type)) == TYPE_DECL
|
||||
&& COMPLETE_TYPE_P (type)
|
||||
&& COMPLETE_OR_VOID_TYPE_P (type)
|
||||
&& ! TREE_ASM_WRITTEN (TYPE_NAME (type)))
|
||||
dbxout_symbol (TYPE_NAME (type), 0);
|
||||
}
|
||||
|
@ -1373,8 +1373,9 @@ put_var_into_stack (decl, rescan)
|
||||
if (function->decl == context)
|
||||
break;
|
||||
|
||||
/* If this is a variable-size object with a pseudo to address it,
|
||||
put that pseudo into the stack, if the var is nonlocal. */
|
||||
/* If this is a variable-sized object or a structure passed by invisible
|
||||
reference, with a pseudo to address it, put that pseudo into the stack
|
||||
if the var is non-local. */
|
||||
if (TREE_CODE (decl) != SAVE_EXPR && DECL_NONLOCAL (decl)
|
||||
&& GET_CODE (reg) == MEM
|
||||
&& GET_CODE (XEXP (reg, 0)) == REG
|
||||
@ -1384,8 +1385,12 @@ put_var_into_stack (decl, rescan)
|
||||
decl_mode = promoted_mode = GET_MODE (reg);
|
||||
}
|
||||
|
||||
/* If this variable lives in the current function and we don't need to put it
|
||||
in the stack for the sake of setjmp or the non-locality, try to keep it in
|
||||
a register until we know we actually need the address. */
|
||||
can_use_addressof
|
||||
= (function == 0
|
||||
&& ! (TREE_CODE (decl) != SAVE_EXPR && DECL_NONLOCAL (decl))
|
||||
&& optimize > 0
|
||||
/* FIXME make it work for promoted modes too */
|
||||
&& decl_mode == promoted_mode
|
||||
@ -1404,9 +1409,6 @@ put_var_into_stack (decl, rescan)
|
||||
|
||||
if (GET_CODE (reg) == REG)
|
||||
{
|
||||
/* If this variable lives in the current function and we don't need
|
||||
to put things in the stack for the sake of setjmp, try to keep it
|
||||
in a register until we know we actually need the address. */
|
||||
if (can_use_addressof)
|
||||
gen_mem_addressof (reg, decl, rescan);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user