Commit e6f7f0e9 by Andrew Pinski Committed by Naveen H.S

aarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of…

aarch64.c (*aarch64_load_symref_appropriately): Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.

	* config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
	Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.


Co-Authored-By: Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>

From-SVN: r220779
parent 17d32dee
2015-02-18 Andrew Pinski <apinski@cavium.com>
Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
* config/aarch64/aarch64.c (*aarch64_load_symref_appropriately):
Check whether the destination of SYMBOL_SMALL_TPREL is Pmode.
2015-02-17 Jan Hubicka <hubicka@ucw.cz> 2015-02-17 Jan Hubicka <hubicka@ucw.cz>
* ipa-visibility.c (function_and_variable_visibility): Only * ipa-visibility.c (function_and_variable_visibility): Only
......
...@@ -911,6 +911,10 @@ aarch64_load_symref_appropriately (rtx dest, rtx imm, ...@@ -911,6 +911,10 @@ aarch64_load_symref_appropriately (rtx dest, rtx imm,
case SYMBOL_SMALL_TPREL: case SYMBOL_SMALL_TPREL:
{ {
rtx tp = aarch64_load_tp (NULL); rtx tp = aarch64_load_tp (NULL);
if (GET_MODE (dest) != Pmode)
tp = gen_lowpart (GET_MODE (dest), tp);
emit_insn (gen_tlsle_small (dest, tp, imm)); emit_insn (gen_tlsle_small (dest, tp, imm));
set_unique_reg_note (get_last_insn (), REG_EQUIV, imm); set_unique_reg_note (get_last_insn (), REG_EQUIV, imm);
return; return;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment