Project

General

Profile

Actions

Bug #5394

open

gcc 4.8.2 and -mno-integer-ldd-std on SPARC

Added by Gary Mills about 7 years ago. Updated about 7 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Start date:
2014-12-05
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

When building illumos with gcc 4.8.2 on SPARC, this error appears many times:

unrecognized command line option '-mno-integer-ldd-std'

It's added by this code block in cw.c:

@
#if defined(__sparc)
/* * The SPARC ldd and std instructions require 8-byte alignment of * their address operand. gcc correctly uses them only when the * ABI requires 8-byte alignment; unfortunately we have a number of * pieces of buggy code that doesn't conform to the ABI. This * flag makes gcc work more like Studio with xmemalign=4.
*/
newae(ctx
>i_ae, "-mno-integer-ldd-std");
#endif
@

There are no instances of `-xmemalign' in illumos Makefiles. Apparently, this compiler option and its actions were a Sun addition to gcc. Newer versions of gcc don't recognize it. Is this type of alignment error still a problem with illumos?

Removing that code block eliminates the complaints.

Actions #1

Updated by Rich Lowe about 7 years ago

The only way I can think of to test this is to take a decent sample of our uses of ldd/std, and the alignment of their operands.

Actions

Also available in: Atom PDF