http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54031
Bug #: 54031
Summary: [4.8 Regression] Revision 189607 miscompiles Linux
kernel
Classification: Unclassified
Product: gcc
Version: 4.8.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
AssignedTo: [email protected]
ReportedBy: [email protected]
Starting with revision 189607 the Linux kernel (latest git) just hangs early
during boot:
...
Kernel command line: root=PARTUUID=1E3384D0-CAE6-41BB-8CD6-4F640164EFD7
init=/sbin/minit rootflags=logbsize=256k drm_kms_helper.poll=0
PID hash table entries: 4096 (order: 3, 32768 bytes)
Dentry cache hash table entries: 1048576 (order: 11, 8388608 bytes)
Inode-cache hash table entries: 524288 (order: 10, 4194304 bytes)
__ex_table already sorted, skipping sort
Memory: 8167084k/8912896k available (4984k kernel code, 526212k absent, 219600k
reserved, 3597k data, 440k init)
SLUB: Genslabs=15, HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
Hierarchical RCU implementation.
NR_IRQS:4352 nr_irqs:712 16
Extended CMOS year: 2000
Console: colour VGA+ 80x25
console [tty0] enabled
(hang)
3482bf1319f9e65a4783bbe9d5b59c11312888db is the first bad commit
commit 3482bf1319f9e65a4783bbe9d5b59c11312888db
Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Wed Jul 18 08:49:55 2012 +0000
2012-07-18 Richard Guenther <[email protected]>
* tree.h (get_object_or_type_alignment): Remove.
* builtins.c (get_object_alignment_2): New function copied from
get_object_alignment_1. Take extra argument to indicate whether
we take the address of EXP. Rework to use type alignment information
if not, and return whether the result is an approximation or not.
(get_object_alignment_1): Wrap around get_object_alignment_2.
(get_pointer_alignment_1): Call get_object_alignment_2 indicating
we take the address.
(get_object_or_type_alignment): Remove.
* expr.c (expand_assignment): Call get_object_alignment.
(expand_expr_real_1): Likewise.