GCC

2012-09-24 Thread Jerome Huck
from Mr Jerome Huck

Good morning.

I have been using the GCC suite on Windows, mainly in the various
Fortran. 77, 2003,... Thanks for those tools ! The Little Google Nexus 7
seems a wonderfull tool. I would like to know if we can expect a version
of GCC to run on Android for such the Nexus 7 ?

Thanks in advance.

Best regards.



confusing "bug is not reproducible, so it is likely a hardware or OS problem" message

2012-09-24 Thread Basile Starynkevitch
Hello All,

When a plugin calls fatal_error, the compilation naturally fails, 
but the last error message is misleading, it says 
(while getting a bug in the MELT plugin for example)


cc1: fatal error: MELT plugin module compilation failed (512) in 
/home/basile/tmp for command make -s -f 
/usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/melt-module-0.9.7-rc1.mk 
GCCMELT_MODULE_SOURCEBASE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/MELTrun0001_eXt 
GCCMELT_MODULE_BINARYBASE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/MELTrun0001_eXt  
MELTGCC_BUILD_WITH_CXX=YesPlugin GCCMELT_CFLAGS=-I\ 
/usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/melt-headers/0.9.7-rc1\ -I\ 
/usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/include\ -I\ 
/usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/include/c-family\ \ -DIN_GCC\ 
-DMELT_IS_PLUGIN\ -O  
GCCMELT_MODULE_WORKSPACE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/ 
GCCMELT_MODULE_FLAVOR=runextend melt_module
compilation terminated.
The bug is not reproducible, so it is likely a hardware or OS problem.

This last sentence is very confusing. I would like to replace it with e.g.

  The bug is not reproducible, so it could be a plugin, hardware or OS problem

But I didn't find that string with grep on GCC trunk's source files. 

Where does that message come from?

Regards.
-- 
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basilestarynkevitchnet mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mines, sont seulement les miennes} ***


Proposed C++ optimization with big speed gains with big objects

2012-09-24 Thread _
Hi guys

I wana discuss proposed optimization step(optional switch?) to c++
compiller that would make old and new code in some cases order of
magnitude faster by just pure recompilation.

...After all those attempts to store anything via = without waste I
think that compiller should do "placement new" transparently for us
whenever he encounters = on movable object.  Instead of forcing us to
implement zillion && operators that solve only heap side of problem.
Deciding what kind of "this" object should use is easy since static
analysis deciding what object is movable is already part of new
compiller support for &&.

Skyscrapper city[1000]; // instead of temp
city[1] = Skyscrapper("Empire State Building"); // compiller should
use &city[1] as this pointer

This would fix heap and static(which && can't) waste = zero alloc/copy.
Why is static mem waste equally if not more important? Majority of
objects are small thus majority of their memory is static.

Benchmark results in article www codeproject
com/Articles/453022/The-new-Cplusplus-11-rvalue-reference-and-why-you

I am actively attemting to test this change in gcc
But I am kinda lost in gcc code. maybe somebody from you guys can
trow togethed this auto placement new instead of temp a lot faster
since you know your
code.
I just can't wait to see the numbers of speed gained from untouched c++ code.
Like running benchmark code from my article but with such compiller
changes.

I  love what you guys do. Keep up the great opensource work.

Best Regards Ladislav [Unemployed]
neuralll[@]gmail[.]com


Re: confusing "bug is not reproducible, so it is likely a hardware or OS problem" message

2012-09-24 Thread Richard Guenther
On Mon, Sep 24, 2012 at 1:01 PM, Basile Starynkevitch
 wrote:
> Hello All,
>
> When a plugin calls fatal_error, the compilation naturally fails,
> but the last error message is misleading, it says
> (while getting a bug in the MELT plugin for example)
>
>
> cc1: fatal error: MELT plugin module compilation failed (512) in 
> /home/basile/tmp for command make -s -f 
> /usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/melt-module-0.9.7-rc1.mk 
> GCCMELT_MODULE_SOURCEBASE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/MELTrun0001_eXt 
> GCCMELT_MODULE_BINARYBASE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/MELTrun0001_eXt  
> MELTGCC_BUILD_WITH_CXX=YesPlugin GCCMELT_CFLAGS=-I\ 
> /usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/melt-headers/0.9.7-rc1\ -I\ 
> /usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/include\ -I\ 
> /usr/lib/gcc/x86_64-linux-gnu/4.7/plugin/include/c-family\ \ -DIN_GCC\ 
> -DMELT_IS_PLUGIN\ -O  
> GCCMELT_MODULE_WORKSPACE=/tmp/filegInaXb-GccMeltTmp-e6c45b3/ 
> GCCMELT_MODULE_FLAVOR=runextend melt_module
> compilation terminated.
> The bug is not reproducible, so it is likely a hardware or OS problem.
>
> This last sentence is very confusing. I would like to replace it with e.g.
>
>   The bug is not reproducible, so it could be a plugin, hardware or OS problem
>
> But I didn't find that string with grep on GCC trunk's source files.
>
> Where does that message come from?

It comes from your distributor who patched GCC.

Richard.

> Regards.
> --
> Basile STARYNKEVITCH http://starynkevitch.net/Basile/
> email: basilestarynkevitchnet mobile: +33 6 8501 2359
> 8, rue de la Faiencerie, 92340 Bourg La Reine, France
> *** opinions {are only mines, sont seulement les miennes} ***


bad reassociation with signed integer code after PR45232.

2012-09-24 Thread Dinar Temirbulatov
Hi,
I noticed some minor regression with singed integer operations in "the
proprietary" code since
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45232. Of course, I could
use "-fwrapv"  flag but my question is: why we could not add overflow
checking in for example int_const_binop() at fold-const.c for signed
integers restore original behavior of the reassociation pass?
  thanks, Dinar.


Re: bad reassociation with signed integer code after PR45232.

2012-09-24 Thread Richard Guenther
On Mon, Sep 24, 2012 at 2:04 PM, Dinar Temirbulatov
 wrote:
> Hi,
> I noticed some minor regression with singed integer operations in "the
> proprietary" code since
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45232. Of course, I could
> use "-fwrapv"  flag but my question is: why we could not add overflow
> checking in for example int_const_binop() at fold-const.c for signed
> integers restore original behavior of the reassociation pass?

Because the compiler may not introduce expressions that may overflow.

Richard.

>   thanks, Dinar.


Re: GCC

2012-09-24 Thread Robert Dewar

On 9/24/2012 6:53 AM, Jerome Huck wrote:

from Mr Jerome Huck

Good morning.

I have been using the GCC suite on Windows, mainly in the various
Fortran. 77, 2003,... Thanks for those tools ! The Little Google Nexus 7
seems a wonderfull tool. I would like to know if we can expect a version
of GCC to run on Android for such the Nexus 7 ?


Sooner if you get to work on creating the port!


Thanks in advance.

Best regards.





predicate for getting declaration tree node for SUBREG

2012-09-24 Thread srinivas dama
Hi,

I see there is predicate REG_EXPR for getting declaration node for a REG rtx.
It would be helpful If I get an equivalent predicate for a  SUBREG rtx.
I couldn't find such thing.

My requirement is :

I need find out if an operand is signed/unsigned from rtx.I am doing as below.
 rtx op0;
 tree decl0;
 decl0 = REG_EXPR (op0);
 unsignedp =TYPE_UNSIGNED (TREE_TYPE (decl0)):


But if my rtx is SUBREG ,I couldn't find equivalent predicate similar
to REG_EXPR.



Regards,
srinivas


Re: predicate for getting declaration tree node for SUBREG

2012-09-24 Thread Richard Guenther
On Mon, Sep 24, 2012 at 3:01 PM, srinivas dama  wrote:
> Hi,
>
> I see there is predicate REG_EXPR for getting declaration node for a REG rtx.
> It would be helpful If I get an equivalent predicate for a  SUBREG rtx.
> I couldn't find such thing.
>
> My requirement is :
>
> I need find out if an operand is signed/unsigned from rtx.I am doing as below.
>  rtx op0;
>  tree decl0;
>  decl0 = REG_EXPR (op0);
>  unsignedp =TYPE_UNSIGNED (TREE_TYPE (decl0)):
>
>
> But if my rtx is SUBREG ,I couldn't find equivalent predicate similar
> to REG_EXPR.

There isn't one.  Similar to how REG_EXPR can be NULL.  In that case
you simply don't know.

Richard.

>
>
> Regards,
> srinivas


Re: Proposed C++ optimization with big speed gains with big objects

2012-09-24 Thread Mike Dupont
Hi,
I think what you want is a  custom allocator :
http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html
http://www.boost.org/doc/libs/1_45_0/doc/html/interprocess/allocators_containers.html
http://stackoverflow.com/questions/2439536/strategy-to-allocate-free-lots-of-small-objects
hope that helps,
mike


On Mon, Sep 24, 2012 at 1:02 PM, _  wrote:
> Hi guys
>
> I wana discuss proposed optimization step(optional switch?) to c++
> compiller that would make old and new code in some cases order of
> magnitude faster by just pure recompilation.
>
> ...After all those attempts to store anything via = without waste I
> think that compiller should do "placement new" transparently for us
> whenever he encounters = on movable object.  Instead of forcing us to
> implement zillion && operators that solve only heap side of problem.
> Deciding what kind of "this" object should use is easy since static
> analysis deciding what object is movable is already part of new
> compiller support for &&.
>
> Skyscrapper city[1000]; // instead of temp
> city[1] = Skyscrapper("Empire State Building"); // compiller should
> use &city[1] as this pointer
>
> This would fix heap and static(which && can't) waste = zero alloc/copy.
> Why is static mem waste equally if not more important? Majority of
> objects are small thus majority of their memory is static.
>
> Benchmark results in article www codeproject
> com/Articles/453022/The-new-Cplusplus-11-rvalue-reference-and-why-you
>
> I am actively attemting to test this change in gcc
> But I am kinda lost in gcc code. maybe somebody from you guys can
> trow togethed this auto placement new instead of temp a lot faster
> since you know your
> code.
> I just can't wait to see the numbers of speed gained from untouched c++ code.
> Like running benchmark code from my article but with such compiller
> changes.
>
> I  love what you guys do. Keep up the great opensource work.
>
> Best Regards Ladislav [Unemployed]
> neuralll[@]gmail[.]com



-- 
James Michael DuPont
Member of Free Libre Open Source Software Kosova http://flossk.org
Saving wikipedia(tm) articles from deletion http://SpeedyDeletion.wikia.com
Contributor FOSM, the CC-BY-SA map of the world http://fosm.org
Mozilla Rep https://reps.mozilla.org/u/h4ck3rm1k3
Free Software Foundation Europe Fellow http://fsfe.org/support/?h4ck3rm1k3