[Bug treelang/28980] New: internal compiler error: in tree_low_cst, at tree.c:4423

2006-09-07 Thread mkgnu at mkgnu dot net
internal compiler error: in tree_low_cst, at tree.c:4423

First, If I run this with -E, I get the preprocessed source that I will attach.

vmfreebsd# gcc42 -E -g -I/usr/local/include
-I/root/devel/dynamos/src/shared/include
-I/root/devel/dynamos/src/framework/include
-I/root/devel/dynamos/src/disassembler/slicer/include
-I/root/devel/dynamos/src/os/include -I/root/devel/dynamos/config
-I/root/devel/dynamos/src/libslicer/include -I/root/devel/dynamos/devel/include
-c dynreplace.c > preprocessed_source.c


And now, the bug:

vmfreebsd# gcc42 -g -I/usr/local/include
-I/root/devel/dynamos/src/shared/include
-I/root/devel/dynamos/src/framework/include
-I/root/devel/dynamos/src/disassembler/slicer/include
-I/root/devel/dynamos/src/os/include -I/root/devel/dynamos/config
-I/root/devel/dynamos/src/libslicer/include -I/root/devel/dynamos/devel/include
-c dynreplace.c
dynreplace.c: In function 'dynreplace_add_trampoline':
dynreplace.c:71: warning: incompatible implicit declaration of built-in
function 'memcpy'
dynreplace.c:48: internal compiler error: in tree_low_cst, at tree.c:4423
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html> for instructions.

vmfreebsd# gcc42 --version
gcc42 (GCC) 4.2.0 20060218 (experimental)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

vmfreebsd# uname -a
FreeBSD vmfreebsd.mkgnu.net 6.1-RELEASE FreeBSD 6.1-RELEASE #0: Sun May  7
04:32:43 UTC 2006 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC  i386


This is running inside a VMWare virtual machine loaded with FreeBSD 6.1.

No bug occurs when compiling with gcc-2.95 or gcc-3.3.4.


-- 
   Summary: internal compiler error: in tree_low_cst, at tree.c:4423
   Product: gcc
   Version: 4.2.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: treelang
AssignedTo: unassigned at gcc dot gnu dot org
    ReportedBy: mkgnu at mkgnu dot net
 GCC build triplet: i386-unknown-freebsd6.1
  GCC host triplet: i386-unknown-freebsd6.1
GCC target triplet: i386-unknown-freebsd6.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28980



[Bug treelang/28980] internal compiler error: in tree_low_cst, at tree.c:4423

2006-09-07 Thread mkgnu at mkgnu dot net


--- Comment #1 from mkgnu at mkgnu dot net  2006-09-08 04:11 ---
Created an attachment (id=12210)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12210&action=view)
The preprocessed source that causes this bug.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28980



[Bug treelang/28980] internal compiler error: in tree_low_cst, at tree.c:4423

2006-09-07 Thread mkgnu at mkgnu dot net


--- Comment #2 from mkgnu at mkgnu dot net  2006-09-08 04:14 ---
gcc42 originated from running a:

# pkg_add -r gcc42

in FreeBSD 6.1. This command installed the package gcc-4.2.0_20060218


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28980



[Bug c/31689] New: Support defining attributes at a scope level

2007-04-24 Thread mkgnu at mkgnu dot net
Support defining attributes at a scope level.

I'd like to request implementing the feature of defining attributes at a scope
level. For example, allow a syntax such as the following, possibly as a GNU
extension:

if (something)
__attribute__ ((section("bar"))) {
   /* body of if-statement */
}


...which will place the body of the if-statement in a separate memory region.


The motivation behind this request is the need to place uncommonly used code in
a separate memory region for better cache locality. For example, given a piece
of C code such as the following:

if (something) {
/* body */
}

... we need to place the entire body in a separate memory region.

1 -- Attempting to use extended inline assembly to implement this is
problematic since the general assumption is that outbound/inbound branches are
not allowed in inline assembly. As Jim Wilson also notes, using Labels as
values (e.g. &&label) confuses the CFG, effectively disabling some
optimizations, which means that performance may be lost when doing this
(http://lists.gnu.org/archive/html/bug-binutils/2007-04/msg00120.html).
Additionally, trying to do things behind the compilers back (in inline
assembly)  will not work in the long-term.

2 -- Using the section attribute to place an entire function in a separate
region is also unsuitable. For example a definition such as:

extern void foobar (void) __attribute__ ((section ("bar")));

puts the entire function `foobar' in the `bar' section, not just the body of an
if statement inside the function. Additionally, putting the body of the
if-statement in a separate function and defining that function to be in a
separate section is not adequate. If the body of the if-statement contains
return instructions or gotos to other parts of the function, won't permit
returning to the function caller or other parts of the original function
(http://gcc.gnu.org/ml/gcc-help/2007-04/msg00282.html).



Discussions about this topic are listed in:

http://gcc.gnu.org/ml/gcc-help/2007-04/msg00250.html
http://lists.gnu.org/archive/html/bug-binutils/2007-04/msg00107.html


-- 
   Summary: Support defining attributes at a scope level
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mkgnu at mkgnu dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31689



[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2007-04-24 Thread mkgnu at mkgnu dot net


--- Comment #5 from mkgnu at mkgnu dot net  2007-04-25 02:12 ---
(In reply to comment #3)
> I've tried a couple of different ways to use branch predictions for
> partitioning, but it never leads to meaningful results.  Either everything is
> hot or everything is cold.  I don't know what else to do about this.

Steven, perhaps you could elaborate what you mean by saying "it never leads to
meaningful results" ?

> I'm actually tempted to claim this is a WONTFIX because "hot" and "cold" are
> not meaningful without profile information.  Thoughts, anyone?

I'm working on a research prototype in which I produce code that should be cold
for a considerable amount of time when a program runs. After some time (or
perhaps never), when a flag is raised, we'd like to use the cold code just
once, and then revert the program back to it's original behavior of running
only hot code.

Apparently, as bug 31689 shows, I need this feature. In this research prototype
I am 100% certain that a piece of code will be cold -- there's no need to
gather profiling information, and I absolutely need this code to be out of the
.text section.

Using this research prototype, I ran experiments that demonstrate a slowdown in
computation-bound applications in the range of 4%-300% on the i386 and PowerPC
architectures depending on the size of the processor i-cache. I believe that
moving the cold code sections out of .text will bring the overhead down to less
than 4%, constantly.

I absolutely, positively, definitely find value in this feature. In fact, my
research progress depends on it and I am actively looking for a way to have
this implemented.

Can you help ?

I've tried using __builtin_expect() and -freorder-blocks-and-partition with gcc
4.1.2 and it doesn't seem to work. If there's a patch laying around that
implements this feature without gathering profiling information I would love to
try it out immediately.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493



[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2013-12-30 Thread mkgnu at mkgnu dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493

--- Comment #9 from Kristis Makris  ---
I won't see, open or read your email.
I won't even know you emailed me.


If there's something you want me to do you have to use this:
https://aimelia.com/res?id=CZPr9mKgQTQfD3dYqy00b5qg


This is an automated response.


[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2013-12-30 Thread mkgnu at mkgnu dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493

--- Comment #10 from Kristis Makris  ---
I won't see, open or read your email.
I won't even know you emailed me.


If there's something you want me to do you have to use this:
https://aimelia.com/res?id=BJ6WQBHg1LEYvkwLH6Hn02hK


This is an automated response.


[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2013-12-30 Thread mkgnu at mkgnu dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493

--- Comment #11 from Kristis Makris  ---
I won't see, open or read your email.
I won't even know you emailed me.


If there's something you want me to do you have to use this:
https://aimelia.com/res?id=wnVviP0qSkNXW1mtSIOKtdq5


This is an automated response.


[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2013-12-30 Thread mkgnu at mkgnu dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493

--- Comment #12 from Kristis Makris  ---
Please revise and resubmit. I can't tell clearly why whatever it is you are
asking is important.


[Bug rtl-optimization/26493] -freorder-blocks-and-partition is a dud without generated profiling data

2007-04-30 Thread mkgnu at mkgnu dot net


--- Comment #6 from mkgnu at mkgnu dot net  2007-04-30 23:42 ---
It seems that when I use -freorder-blocks-and-partition along with
-fprofile-use (after I have already run once an executable compiled with
-freorder-blocks-and-partition -fprofile-generate) I can produce an object file
that contains a .text.unlikely section, as expected.

But when I try to further link this object file with other object files to
produce an executable, the .text.unlikely section is missing from the final
executable. I've tried this with gcc4.1.2/ld2.15 and then again with
gcc4.1.1/ld2.17 with the same results.

Is this another bug related to -freorder-blocks-and-partition ? Should I file a
separate bug report for it ?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26493



[Bug tree-optimization/31925] New: Internal compiler error in `store_bit_field', at expmed.c:277

2007-05-14 Thread mkgnu at mkgnu dot net
Internal compiler error in `store_bit_field', at expmed.c:277.

It seems that I've come across a case where compiling with gcc 2.95.4 (from the
Debian package 2.95.4-22) using -O3 crashes, while compiling with no
optimization does not crash.

I will attach the .i file produced with -save-temps. I'm experiencing:

$ gcc -O3 -c bm_kiss_double.cil.i
...
./bm_kiss_double.cil.c: In function `hcu_restore_frame_of___sgnl_v1':
./bm_kiss_double.cil.c:4273: Internal compiler error:
./bm_kiss_double.cil.c:4273: Internal compiler error in `store_bit_field', at
expmed.c:277
Please submit a full bug report.
See http://www.gnu.org/software/gcc/bugs.html> for instructions.


I'm using the gcc 2.95.x series in a performance evaluation of various
compilers.

I did not try to reproduce with gcc 2.96 or gcc 2.97 (I don't see them being
available for Debian).

I confirmed that gcc 3.3.5 does not have this problem.


-- 
   Summary: Internal compiler error in `store_bit_field', at
expmed.c:277
   Product: gcc
   Version: 2.95.4
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mkgnu at mkgnu dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31925



[Bug tree-optimization/31925] Internal compiler error in `store_bit_field', at expmed.c:277

2007-05-14 Thread mkgnu at mkgnu dot net


--- Comment #1 from mkgnu at mkgnu dot net  2007-05-14 22:03 ---
Created an attachment (id=13554)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13554&action=view)
Source code that causes an internal compiler error


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31925



[Bug tree-optimization/31925] Internal compiler error in `store_bit_field', at expmed.c:277

2007-05-14 Thread mkgnu at mkgnu dot net


--- Comment #2 from mkgnu at mkgnu dot net  2007-05-14 22:05 ---
Output of gcc -v

$ gcc -v -O3 -c bm_kiss_double.cil.i
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs
gcc version 2.95.4 20011002 (Debian prerelease)
 /usr/lib/gcc-lib/i386-linux/2.95.4/cc1 bm_kiss_double.cil.i -quiet -O3
-version -o /tmp/ccvYzdxK.s
GNU C version 2.95.4 20011002 (Debian prerelease) (i386-linux) compiled by GNU
C version 2.95.4 20011002 (Debian prerelease).

...

./bm_kiss_double.cil.c: In function `hcu_restore_frame_of___sgnl_v1':
./bm_kiss_double.cil.c:4273: Internal compiler error:
./bm_kiss_double.cil.c:4273: Internal compiler error in `store_bit_field', at
expmed.c:277


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31925