Project

General

Profile

Actions

Feature #9996

closed

use GCC 7 as default primary compiler

Added by Joshua M. Clulow over 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
tools - gate/build tools
Start date:
2018-11-21
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
Gerrit CR:
External Bug:

Description

Once #9978 is integrated, our default compilation settings will be using GCC 7 as a shadow compiler in addition to the officially supported GCC 4.4.4 primary compiler. This should ensure that we don't accumulate new warnings or errors that the GCC 7 compiler would catch.

The next step is to make ourselves comfortable with a switch to GCC 7 as the primary compiler, which we would use to build and ship the OS. This ticket will detail the set of tests and checks we've performed, and then cover the appropriate changes to Makefile.master and the default illumos.sh environment file.


Related issues

Related to illumos gate - Bug #9312: ctf: be less clever about skipping 'extern' variables declarationsClosedToomas Soome2018-03-19

Actions
Related to illumos gate - Bug #9864: DWARF->CTF enum conversion needs to be careful of signClosed2018-10-03

Actions
Related to illumos gate - Feature #9978: env: set gcc 7 as shadow compiler and do not run lintClosedToomas Soome2018-11-13

Actions
Related to illumos gate - Bug #10468: __ctype_mask[EOF] has been working by accidentClosedJohn Levon2019-02-27

Actions
Related to illumos gate - Bug #10469: GCC's -faggressive-loop-optimizations is too aggressiveClosedJohn Levon2019-02-27

Actions
Related to illumos gate - Bug #10470: array over-read in has_saved_fp()ClosedJohn Levon2019-02-27

Actions
Actions #1

Updated by John Levon over 4 years ago

  • Related to Bug #9312: ctf: be less clever about skipping 'extern' variables declarations added
Actions #2

Updated by John Levon over 4 years ago

  • Related to Bug #9864: DWARF->CTF enum conversion needs to be careful of sign added
Actions #3

Updated by Joshua M. Clulow over 4 years ago

  • Related to Feature #9978: env: set gcc 7 as shadow compiler and do not run lint added
Actions #4

Updated by John Levon about 4 years ago

  • Related to Bug #10468: __ctype_mask[EOF] has been working by accident added
Actions #5

Updated by John Levon about 4 years ago

  • Related to Bug #10469: GCC's -faggressive-loop-optimizations is too aggressive added
Actions #6

Updated by John Levon about 4 years ago

  • Related to Bug #10470: array over-read in has_saved_fp() added
Actions #7

Updated by John Levon about 4 years ago

I still have this on my radar, FWIW. There are a bunch of CTF fixes incoming, and the test suite there will require at least one CTF fix before it's GCC-7 friendly, so that's the current blocker.

Actions #8

Updated by Rich Lowe about 4 years ago

We need at the very least to run the GCC test suite in these combinations:

i386
amd64

(does anything critical or unexpected fail?)

patched i386 v. unpatched i386
patched amd64 v. unpatched amd64

(does anything fail after patching that did not before. It should not)

patched amd64 v. patched amd64 with -msave-args

(did msave-args break anything unexpectedly or inexplicably, it should not)

Actions #9

Updated by John Levon almost 4 years ago

  • Assignee set to John Levon
Actions #10

Updated by Electric Monk almost 4 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit 8123ce613394ead6c23466878120a590ddc43dec

commit  8123ce613394ead6c23466878120a590ddc43dec
Author: John Levon <john.levon@joyent.com>
Date:   2019-06-17T08:49:23.000Z

    9996 use GCC 7 as default primary compiler
    Reviewed by: Toomas Soome <tsoome@me.com>
    Reviewed by: Peter Tribble <peter.tribble@gmail.com>
    Approved by: Robert Mustacchi <rm@joyent.com>

Actions

Also available in: Atom PDF