Re: [fpc-devel] Lazarus IDE / Packages - SetAlternativeCompile for Before and After

2018-09-09 Thread Christo Crause
On Sun, 9 Sep 2018, 18:30 Mathias,  wrote:

> Hello
>   Lazarus team,
>
>
>
>   i build an AVR package for the Lazarus IDE.
>
>   It is absolutely necessary, that I can enter something with
>   compiler commands, with "afterwards". There comes in an
>   avrdude call.
>
>
Try posting your question on the Lazarus forum :
 http://forum.lazarus.freepascal.org/index.php/board,13.0.html
___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] Lazarus IDE / Packages - SetAlternativeCompile for Before and After

2018-09-09 Thread Michael Van Canneyt


I think you mailed to the wrong list ?

Michael.

On Sun, 9 Sep 2018, Mathias wrote:


Hello Lazarus team,

i build an AVR package for the Lazarus IDE.
It is absolutely necessary, that I can enter something with compiler 
commands, with "afterwards". There comes in an avrdude call.


This works, I made the following changes in Lazarus.
It would be nice who the Lazarus team could put this firmly in place.

Even more ingenious would be who you could even read it out, eg. with 
"GetAlternativeCompile"


The current state of my AVR package I have on GitHub. 
https://github.com/sechshelme/AVR-Lazarus/tree/master/AVR_Package




// === Lazarus 1.9.0 r58920M ===


 // components/ideintf/compoptsintf.pas: Zeile 454

 // old

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean); virtual; abstract;// disable normal compile and 
call this instead


 // new

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean; After:Boolean=False); virtual; abstract;// disable 
normal compile and call this instead




 // ide/compileroptions.pp: Zeile 499 + 3695


 // old

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean); override;

 .

 procedureTBaseCompilerOptions.SetAlternativeCompile(constCommand:string;

   ScanFPCMsgs:boolean);

 begin

   CompilerPath:='';

   ExecuteBefore.Command:=Command;

  ifScanFPCMsgsthen

     ExecuteBefore.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

  else

     ExecuteBefore.Parsers.Clear;

 end;


 // new

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean; After:Boolen); override;

 .

 procedureTBaseCompilerOptions.SetAlternativeCompile(constCommand:string;

   ScanFPCMsgs:boolean; After:Boolen);

 begin

   CompilerPath:='';


  ifAfterthenbegin

     ExecuteAfter.Command:=Command;

ifScanFPCMsgsthen

       ExecuteAfter.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

else

       ExecuteAfter.Parsers.Clear;

  endelsebegin

     ExecuteBefore.Command:=Command;

ifScanFPCMsgsthen

       ExecuteBefore.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

else

       ExecuteBefore.Parsers.Clear;

  end;

 end;


 // ide/project.pp: Zeile 551 + 6255


 // old

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean); override;

 .

 procedureTProjectCompilerOptions.SetAlternativeCompile(constCommand:string;

   ScanFPCMsgs:boolean);

 begin

  inheritedSetAlternativeCompile(Command,ScanFPCMsgs);

   CompileReasons:=[];

 end;


 // new

procedureSetAlternativeCompile(constCommand:string;
 ScanFPCMsgs:boolean; After:Boolean); override;

 .

 procedureTProjectCompilerOptions.SetAlternativeCompile(constCommand:string;

   ScanFPCMsgs:boolean; After:Boolean);

 begin

  inheritedSetAlternativeCompile(Command,ScanFPCMsgs,After);

   CompileReasons:=[];

 end;

___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


[fpc-devel] Lazarus IDE / Packages - SetAlternativeCompile for Before and After

2018-09-09 Thread Mathias

Hello Lazarus team,

i build an AVR package for the Lazarus IDE.
It is absolutely necessary, that I can enter something with compiler 
commands, with "afterwards". There comes in an avrdude call.


This works, I made the following changes in Lazarus.
It would be nice who the Lazarus team could put this firmly in place.

Even more ingenious would be who you could even read it out, eg. with 
"GetAlternativeCompile"


The current state of my AVR package I have on GitHub. 
https://github.com/sechshelme/AVR-Lazarus/tree/master/AVR_Package




// === Lazarus 1.9.0 r58920M ===

   


  // components/ideintf/compoptsintf.pas: Zeile 454

  // old

 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean); virtual; abstract;// disable normal compile and 
call this instead

  // new

 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean; After:Boolean=False); virtual; abstract;// disable 
normal compile and call this instead

   

   


  // ide/compileroptions.pp: Zeile 499 + 3695

   


  // old
  


 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean); override;

  .

  procedureTBaseCompilerOptions.SetAlternativeCompile(constCommand:string;

    ScanFPCMsgs:boolean);

  begin

    CompilerPath:='';

    ExecuteBefore.Command:=Command;

   ifScanFPCMsgsthen

      ExecuteBefore.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

   else

      ExecuteBefore.Parsers.Clear;

  end;

   


  // new

 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean; After:Boolen); override;

  .

  procedureTBaseCompilerOptions.SetAlternativeCompile(constCommand:string;

    ScanFPCMsgs:boolean; After:Boolen);

  begin

    CompilerPath:='';

   


   ifAfterthenbegin

      ExecuteAfter.Command:=Command;

 ifScanFPCMsgsthen

        ExecuteAfter.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

 else

        ExecuteAfter.Parsers.Clear;

   endelsebegin

      ExecuteBefore.Command:=Command;

 ifScanFPCMsgsthen

        ExecuteBefore.Parsers.Text:=SubToolFPC+LineEnding+SubToolMake

 else

        ExecuteBefore.Parsers.Clear;

   end;

  end;

   


  // ide/project.pp: Zeile 551 + 6255

   


  // old

 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean); override;

  .

  
procedureTProjectCompilerOptions.SetAlternativeCompile(constCommand:string;

    ScanFPCMsgs:boolean);

  begin

   inheritedSetAlternativeCompile(Command,ScanFPCMsgs);

    CompileReasons:=[];

  end;

   


  // new

 procedureSetAlternativeCompile(constCommand:string;
  ScanFPCMsgs:boolean; After:Boolean); override;

  .

  
procedureTProjectCompilerOptions.SetAlternativeCompile(constCommand:string;

    ScanFPCMsgs:boolean; After:Boolean);

  begin

   inheritedSetAlternativeCompile(Command,ScanFPCMsgs,After);

    CompileReasons:=[];

  end;

___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel


Re: [fpc-devel] AVX 512 - Can't compile vaddps zmm1, zmm2, zmm3

2018-09-09 Thread Florian Klämpfl
Am 08.09.2018 um 06:50 schrieb Joao Schuler:
> I can confirm that this works:
> 
>   VEXTRACTF32x4 xmm2, zmm0, 1
>   VEXTRACTF32x4 xmm3, zmm0, 2
>   VEXTRACTF32x4 xmm4, zmm0, 3
> 
> Well done job!
> 
> I have more good news: I've just finished coding support for AVX512 in my own 
> project:
> https://www.youtube.com/watch?v=qGnfwpKUTIQ  
> 
> I'm getting loads of warnings "marked as inline is not inlined". Is there 
> anything I can do to be able to properly
> compile with inlines? 

The avx512 branch shouldn't be different in this regard?

>I can't tell users to use your branch as of now as the lack of inline 
>decreases speed.
> 
> Anyway, thank you!
> 
> 
> ___
> fpc-devel maillist  -  fpc-devel@lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
> 

___
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel