icc: allow code path for newer versions of icc.

Patch adds a version checkin for workaround an icc problem.
Icc problem was fixed in version 14, and gdb code has to
reflect the fix.
This patch contains a parser for the icc string version and conditional
workaround execution.  Adds also gdb self tests for the dwarf producers.

2017-06-28  Walfred Tedeschi  <walfred.tedeschi@intel.com>

gdb/ChangeLog:
	* dwarf2read.c (dwarf2_cu): Remove field producer_is_icc and add
	producer_is_icc_lt_14.
	(producer_is_icc_lt_14): New function.
	(check_producer): Add code for checking version of icc.
	(producer_is_icc): Move to dwarf2utils.
	(read_structure_type): Add a check for the later version of icc
	where the issue was still not fixed.
	(dwarf_producer_test): Add new unit test.
	(_initialize_dwarf2_read): Register the unit test.
	* dwarf2utils.c (producer_is_icc): New function.
	* dwarf2utils.h (producer_is_icc): Declaration of a new function.
	* dwarf2utils.c (_initialize_dwarf2utils): New function.

Change-Id: I70871846be4b70df477a63e700a52c41da81b92a
Signed-off-by: Walfred Tedeschi <walfred.tedeschi@intel.com>
4 files changed