#2790 closed defect (fixed)

Linker sets broken with GCC 7

Reported by: Sebastian Huber Owned by: Sebastian Huber
Priority: normal Milestone: 5.1
Component: score Version: 5
Severity: normal Keywords:
Cc: Blocked By:
Blocking:

Description

See also:

https://gcc.gnu.org/ml/gcc/2016-09/msg00114.html

The

#define MAKEGCCNOTKNOWTHEADDRESS(ptr) asm("":"+r"(ptr))

is probably the best option. It works probably also with link-time optimization.

Change History (5)

comment:1 Changed on Oct 12, 2016 at 9:13:53 AM by Sebastian Huber <sebastian.huber@…>

In be573185e6d6ddafdd3612c7c2db04aa0f65a330/rtems:

score: More robust linker sets

Update #2408.
Update #2790.

comment:2 Changed on Oct 13, 2016 at 5:15:45 AM by Sebastian Huber <sebastian.huber@…>

Resolution: fixed
Status: newclosed

In f5eff007a44ad20c2a420b66903508e9d6c3b066/rtems:

score: Rename RTEMS_OBFUSCATE_POINTER()

The inline asm construct works for everything which fits into a
register.

Close #2790.

comment:3 Changed on Dec 6, 2016 at 11:03:23 AM by Sebastian Huber <sebastian.huber@…>

In 4b579c5f5170e1fb6a0573729444c289643b7d84/rtems:

score: Simplify linker set API

Resurrect RTEMS_LINKER_SET_BEGIN() and RTEMS_LINKER_SET_END().

Add new macros RTEMS_LINKER_SET_ITEM_COUNT(),
RTEMS_LINKER_SET_IS_EMPTY(), and
RTEMS_LINKER_SET_FOREACH().

Remove confusing RTEMS_LINKER_SET_ASSIGN_BEGIN() and
RTEMS_LINKER_SET_ASSIGN_END().

Fix RTEMS_LINKER_SET_SIZE() to return the size in characters as
specified by the documentation.

Update #2408.
Update #2790.

comment:4 Changed on May 11, 2017 at 7:31:02 AM by Sebastian Huber

Milestone: 4.124.12.0

comment:5 Changed on Nov 9, 2017 at 6:27:14 AM by Sebastian Huber

Milestone: 4.12.05.1

Milestone renamed

Note: See TracTickets for help on using tickets.