Commit 417b3023 by Alexandre Oliva Committed by Jakub Jelinek

dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and DW_OP_implicit_value…

dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and DW_OP_implicit_value even without dwarf_version 4.

	* dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and
	DW_OP_implicit_value even without dwarf_version 4.

From-SVN: r151815
parent e7f373fa
2009-09-17 Alexandre Oliva <aoliva@redhat.com>
* dwarf2out.c (loc_descriptor): Emit DW_OP_stack_value and
DW_OP_implicit_value even without dwarf_version 4.
2009-09-17 Jan Hubicka <jh@suse.cz>
* dwarf2out.c: Include tree-pass.h and gimple.h.
......
......@@ -11777,7 +11777,7 @@ loc_descriptor (rtx rtl, enum machine_mode mode,
break;
case CONST_INT:
if (mode != VOIDmode && mode != BLKmode && dwarf_version >= 4)
if (mode != VOIDmode && mode != BLKmode)
{
HOST_WIDE_INT i = INTVAL (rtl);
int litsize;
......@@ -11831,7 +11831,7 @@ loc_descriptor (rtx rtl, enum machine_mode mode,
break;
case CONST_DOUBLE:
if (mode != VOIDmode && dwarf_version >= 4)
if (mode != VOIDmode)
{
/* Note that a CONST_DOUBLE rtx could represent either an integer
or a floating-point constant. A CONST_DOUBLE is used whenever
......@@ -11862,7 +11862,7 @@ loc_descriptor (rtx rtl, enum machine_mode mode,
break;
case CONST_VECTOR:
if (mode != VOIDmode && dwarf_version >= 4)
if (mode != VOIDmode)
{
unsigned int elt_size = GET_MODE_UNIT_SIZE (GET_MODE (rtl));
unsigned int length = CONST_VECTOR_NUNITS (rtl);
......@@ -11950,8 +11950,7 @@ loc_descriptor (rtx rtl, enum machine_mode mode,
&& SYMBOL_REF_TLS_MODEL (rtl) != TLS_MODEL_NONE)
break;
case LABEL_REF:
if (mode != VOIDmode && GET_MODE_SIZE (mode) == DWARF2_ADDR_SIZE
&& dwarf_version >= 4)
if (mode != VOIDmode && GET_MODE_SIZE (mode) == DWARF2_ADDR_SIZE)
{
loc_result = new_loc_descr (DW_OP_implicit_value,
DWARF2_ADDR_SIZE, 0);
......@@ -11963,8 +11962,7 @@ loc_descriptor (rtx rtl, enum machine_mode mode,
default:
if (GET_MODE_CLASS (mode) == MODE_INT && GET_MODE (rtl) == mode
&& GET_MODE_SIZE (GET_MODE (rtl)) <= DWARF2_ADDR_SIZE
&& dwarf_version >= 4)
&& GET_MODE_SIZE (GET_MODE (rtl)) <= DWARF2_ADDR_SIZE)
{
/* Value expression. */
loc_result = mem_loc_descriptor (rtl, VOIDmode, initialized);
......
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