Summary: | Unexpected warning pragma GCC target | ||
---|---|---|---|
Product: | gcc | Reporter: | Joey Ye <joey.ye> |
Component: | target | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED DUPLICATE | ||
Severity: | normal | CC: | chrbr, ramana |
Priority: | P3 | ||
Version: | 4.9.0 | ||
Target Milestone: | --- | ||
Host: | Target: | arm | |
Build: | Known to work: | ||
Known to fail: | Last reconfirmed: | 2015-04-30 00:00:00 | |
Bug Depends on: | 52144 | ||
Bug Blocks: |
Description
Joey Ye
2014-01-20 03:07:45 UTC
Comes from: if (p->target_binary != target_option_current_node) { (void) targetm.target_option.pragma_parse (NULL_TREE, p->target_binary); target_option_current_node = p->target_binary; } The front-end expects the target always to implement these target hooks it seems rather than the default. Really I think the arm back-end should implement them so that thumb2 code can be in the same source file as arm32 code and would help out LTO when people mix and match them. (In reply to Andrew Pinski from comment #1) > Comes from: > if (p->target_binary != target_option_current_node) > { > (void) targetm.target_option.pragma_parse (NULL_TREE, > p->target_binary); > target_option_current_node = p->target_binary; > } > > > The front-end expects the target always to implement these target hooks it > seems rather than the default. > > Really I think the arm back-end should implement them so that thumb2 code > can be in the same source file as arm32 code and would help out LTO when > people mix and match them. It is a useful feature on ARM. I don't know why it isn't support now. But this warning still need to be fixed as there are always some targets not supportting this pragma. https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01977.html are the seeds of fixing this. A lot more will be needed than this basic set of patches to support more of this. Christian Bruel is looking into this. |