This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
> From: Joern Rennecke [mailto:amylaar@onetel.net.uk] > Sent: Thursday, August 08, 2002 3:19 PM > While it makes sense to wrap CONST around an UNSPEC, it does not > make sense to do so for SYMBOL_REF or LABEL_REF, and doing so > means creating un-canonical rtl. > So, instead of making the working code grok this uncanonical rtl, > you should make sure that it is not generated in the first place. > > Depending on how straightforward this check and/or fix is, and > how confident you feel that it will stay fixed, you might want to > put sanity checks into the print_operand* functions. I made these changes and tested them before I read Alexandre's email. I appreciate that Alexandre is currently unhappy with this patch, but I'd like to report on what I've done anyway, in the hope that it's useful. Attached is an updated version of the patch incorporating the changes Jörn wanted. I've removed the matching of CONST-wrapped LABEL_REF and SYMBOL_REF. In a scan through the source I couldn't find any places that would generate them. I've added checks to print_operand_address and print_operand that CONST-wrapped LABEL_REF/SYMBOL_REF don't occur. During testing these checks found nothing, so I'm not convinced they need to be left in. But I've left them in the patch so they can be reviewed. Regression tested on sh-elf/sh-hms-sim and sh64-elf/sh64-sim. I also did a test run on sh64-elf/sh64-sim with set TORTURE_OPTIONS [list \ { -O0 -fPIC } \ { -O1 -fPIC } \ { -O3 -fomit-frame-pointer -fPIC } \ { -O0 -m5-compact } \ { -O1 -m5-compact } \ { -O3 -fomit-frame-pointer -m5-compact } ] as I don't think these are much covered by the default options. Steve.
Attachment:
datalabel.patch
Description: datalabel.patch
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |