i386.c (legitimize_tls_address): Generate tls_initial_exec_64_sun only when !TARGET_X32.

* config/i386/i386.c (legitimize_tls_address) <TLS_MODEL_INITIAL_EXEC>:
	Generate tls_initial_exec_64_sun only when !TARGET_X32.

From-SVN: r188022
This commit is contained in:
Uros Bizjak 2012-05-30 16:52:38 +02:00
parent 4bbbcbf6f5
commit 974485d7ef
2 changed files with 14 additions and 13 deletions

View File

@ -1,3 +1,8 @@
2012-05-30 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (legitimize_tls_address) <TLS_MODEL_INITIAL_EXEC>:
Generate tls_initial_exec_64_sun only when !TARGET_X32.
2012-05-30 Richard Guenther <rguenther@suse.de>
PR middle-end/53501
@ -169,23 +174,21 @@
2012-05-29 Georg-Johann Lay <avr@gjlay.de>
* config/avr/t-avr (s-avr-mmcu-texi): Call
* config/avr/t-avr (s-avr-mmcu-texi): Call
gen-avr-mmcu-texi$(build_exeext) via ./ and don't assume . is in PATH.
2012-05-29 Michael Matz <matz@suse.de>
* rtl.h (assign_stack_temp, assign_stack_temp_for_type,
assign_temp): Remove 'keep' argument.
(mark_temp_addr_taken): Remove prototype.
* tree.h (expand_decl): Remove prototype.
* function.c (struct temp_slot): Remove addr_taken and keep
member.
* function.c (struct temp_slot): Remove addr_taken and keep member.
(assign_stack_temp_for_type) Don't initialize above, remove
keep argument.
(assign_stack_temp, assign_temp): Remove keep argument.
(mark_temp_addr_taken): Remove.
(preserve_temp_slots): Remove handling of addr_taken and keep
members.
(preserve_temp_slots): Remove handling of addr_taken and keep members.
(free_temp_slots): Ditto.
* expr.c (expand_expr_real_1 <COMPOUND_LITERAL_EXPR>): Remove
dead code.
@ -231,7 +234,7 @@
* expr.c (expand_expr_real_1 <normal_inner_ref>): Don't allocate
a kept temp.
(expand_expr_real_1 <COMPOUND_LITERAL_EXPR>): Make unreachable.
* gimple-fold.c (canonicalize_constructor_val): Canonicalize
* gimple-fold.c (canonicalize_constructor_val): Canonicalize
COMPOUND_LITERAL_EXPR.
* function.c (expand_function_start): Don't call expand_decl,
instead assert that we have RTL assigned.
@ -415,8 +418,7 @@
PR middle-end/53510
* input.c (read_line): Use XRESIZEVEC instead of XNEWVEC
to avoid leaking memory. No need to handle memory allocation
failure. Double string_len on each reallocation instead of
adding 2.
failure. Double string_len on each reallocation instead of adding 2.
* gcov.c (read_line): Likewise.
2012-05-29 Hans-Peter Nilsson <hp@axis.com>
@ -435,8 +437,7 @@
2012-05-28 Hans-Peter Nilsson <hp@axis.com>
* doc/md.texi (stack_protect_test): Remove negation of branch to
label.
* doc/md.texi (stack_protect_test): Remove negation of branch to label.
(Standard Names): Fix typos in documentation of atomic patterns.
2012-05-27 Nathan Sidwell <nathan@acm.org>

View File

@ -12810,13 +12810,13 @@ legitimize_tls_address (rtx x, enum tls_model model, bool for_mov)
case TLS_MODEL_INITIAL_EXEC:
if (TARGET_64BIT)
{
if (TARGET_SUN_TLS)
if (TARGET_SUN_TLS && !TARGET_X32)
{
/* The Sun linker took the AMD64 TLS spec literally
and can only handle %rax as destination of the
initial executable code sequence. */
dest = gen_reg_rtx (Pmode);
dest = gen_reg_rtx (DImode);
emit_insn (gen_tls_initial_exec_64_sun (dest, x));
return dest;
}