Improve generation of conditional compares in gcc.

Registered by Ramana Radhakrishnan on 2012-05-23

One of the problems with reducing BRANCH_COST is the loss in ability to do conditional compares as the generation of this relies on a code sequence produced by a high value of BRANCH_COST. An example of this is in the following testcase.

int foo (int x, int y,int z)
{
  if ( x == y || x == z)
   return 5;
  else
    return 10;
}

The output difference between -mcpu=cortex-a5 and -mcpu=cortex-a9 will explain what I'm referring to here.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Medium
Drafter:
Matthew Gretton-Dann
Direction:
Needs approval
Assignee:
None
Definition:
Discussion
Series goal:
Accepted for 4.7
Implementation:
Informational Informational
Milestone target:
milestone icon backlog

Related branches

Sprints

Whiteboard

[2013-05-23 matthew-gretton-dann] This will be covered as part of the work in TCWG-10 (http://cards.linaro.org/browse/TCWG-10).

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.