Possibly latent issue with combine ?

2019-06-26 Thread Prathamesh Kulkarni
Hi, For following test-case, taken from pr88152.C: #include template using V [[gnu::vector_size(N)]] = T; int f10 (V a) { return _mm_movemask_pd (reinterpret_cast<__m128d> (a > __LONG_LONG_MAX__)); } .optimized dump shows: f10 (V a) { vector(2) signed long _1; vector(2) long int _2;

CFG generation from C/C++ and JAVA

2019-06-26 Thread charfi asma via gcc
Hello, I am interested in generating the CFG from several gcc front ends. All works fine for GCC and G++, and we are also interrested in JAVA. we have seen that GCJ is no longer maintained/distributed by GCCHowever, we do not like to compile input java code into assembly or binary code, we would

Re: Possibly latent issue with combine ?

2019-06-26 Thread Segher Boessenkool
On Wed, Jun 26, 2019 at 07:27:20PM +0530, Prathamesh Kulkarni wrote: > combine then does following combinations: > > Trying 7 -> 9: > 7: r90:V2DI=r89:V2DI>r93:V2DI > REG_DEAD r93:V2DI > REG_DEAD r89:V2DI > 9: r91:V2DF=r90:V2DI#0 > REG_DEAD r90:V2DI > Successfully matched

Re: Possibly latent issue with combine ?

2019-06-26 Thread Richard Sandiford
Segher Boessenkool writes: > On Wed, Jun 26, 2019 at 07:27:20PM +0530, Prathamesh Kulkarni wrote: >> combine then does following combinations: >> >> Trying 7 -> 9: >> 7: r90:V2DI=r89:V2DI>r93:V2DI >> REG_DEAD r93:V2DI >> REG_DEAD r89:V2DI >> 9: r91:V2DF=r90:V2DI#0 >> REG

Re: Possibly latent issue with combine ?

2019-06-26 Thread Segher Boessenkool
On Wed, Jun 26, 2019 at 05:45:48PM +0100, Richard Sandiford wrote: > "Obviously" correct seems a stretch :-) We can only fold: > > (subreg:V2DF (foo:V2DI X) 0) > > to: > > (foo:V2DF X) > > for certain operations. > > E.g. it'd be wrong to do it for foo=plus. You would need to change X th

[GSoC'19] First Evaluations: Implementing OpenMP Work Stealing Scheduling

2019-06-26 Thread 김규래
Hi everyone, I'll share my status for GSoC first evaluation. Current status of libgomp task system: I'll first summarize my understanding of libgomp. Please correct me if I'm wrong. Currently libgomp has 3 different queues: children_queue, taskloop_queue and team_queue. These three queues are pr

[RFC] Confusing fall through BB pc in conditional jump

2019-06-26 Thread Kewen.Lin
Hi all, 6: NOTE_INSN_BASIC_BLOCK 2 12: r135:CC=cmp(r122:DI,0) 13: pc={(r135:CC!=0)?L52:pc} REG_DEAD r135:CC REG_BR_PROB 1041558836 31: L31: 17: NOTE_INSN_BASIC_BLOCK 3 The above RTL seq is from pass doloop dumping with -fdump-rtl-all-slim, I misunderstood