Bug#919628: Apply Julia's LLVM patches

2019-03-08 Thread Mo Zhou


It failed due to duplicated patch. To my surprise the duplicated patch
added the same function twice without error. If sbuild passed on power9,
I'll do the team upload to unstable.

On Fri, Mar 08, 2019 at 11:59:35AM +0100, Sylvestre Ledru wrote:
> Nope but it seems to be introduced by Julia's patches
> 
> 
> Le 08/03/2019 à 11:34, Mo Zhou a écrit :
> > Hi,
> > 
> > However it doesn't compile on Power9:
> > 
> > In file included from 
> > /home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCSubtarget.h:18,
> >   from 
> > /home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCTargetMachine.h:18,
> >   from 
> > /home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCBoolRetToInt.cpp:36:
> > /home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:892:10:
> >  error: 'bool llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, 
> > unsigned int) const
> > ' cannot be overloaded with 'bool 
> > llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, unsigned int) 
> > const'
> >   bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const 
> > override {
> >^~~
> > /home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:887:10:
> >  note: previous declaration 'bool 
> > llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int,
> >   unsigned int) const'
> >   bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const 
> > override {
> >^~~
> > 
> > Any idea?



Bug#919628: Apply Julia's LLVM patches

2019-03-08 Thread Sylvestre Ledru

Nope but it seems to be introduced by Julia's patches


Le 08/03/2019 à 11:34, Mo Zhou a écrit :

Hi,

However it doesn't compile on Power9:

In file included from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCSubtarget.h:18,
  from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCTargetMachine.h:18,
  from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCBoolRetToInt.cpp:36:
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:892:10:
 error: 'bool llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, 
unsigned int) const
' cannot be overloaded with 'bool 
llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, unsigned int) const'
  bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override {
   ^~~
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:887:10:
 note: previous declaration 'bool 
llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int,
  unsigned int) const'
  bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override {
   ^~~

Any idea?

On Thu, Mar 07, 2019 at 04:24:07PM +0100, Sylvestre Ledru wrote:

Le 07/03/2019 à 14:25, Mo Zhou a écrit :

Hi,

On Wed, Mar 06, 2019 at 04:27:16PM +0100, Sylvestre Ledru wrote:

I am off this week. If you could do a merge request to address the issues,
that would be amazing :)

 36 #fix-lldb-server-build
 38 #bug-30342.diff
67 # D51639-optim-issue.diff
54 #install-lldb-sb-headers.patch

I've dealt with those 4 and pushed changes to the 6.0 branch.

Sound great, do you want me to upload it? (or you can do it if you want)

many thanks!

S






Bug#919628: Apply Julia's LLVM patches

2019-03-08 Thread Mo Zhou
Hi,

However it doesn't compile on Power9:

In file included from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCSubtarget.h:18,
 from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCTargetMachine.h:18,
 from 
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCBoolRetToInt.cpp:36:
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:892:10:
 error: 'bool llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, 
unsigned int) const
' cannot be overloaded with 'bool 
llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int, unsigned int) const'
 bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override {
  ^~~
/home/debian/llvm/llvm-toolchain-6.0/lib/Target/PowerPC/PPCISelLowering.h:887:10:
 note: previous declaration 'bool 
llvm::PPCTargetLowering::isNoopAddrSpaceCast(unsigned int,
 unsigned int) const'
 bool isNoopAddrSpaceCast(unsigned SrcAS, unsigned DestAS) const override {
  ^~~

Any idea?

On Thu, Mar 07, 2019 at 04:24:07PM +0100, Sylvestre Ledru wrote:
> 
> Le 07/03/2019 à 14:25, Mo Zhou a écrit :
> > Hi,
> > 
> > On Wed, Mar 06, 2019 at 04:27:16PM +0100, Sylvestre Ledru wrote:
> > > I am off this week. If you could do a merge request to address the issues,
> > > that would be amazing :)
> > > > 36 #fix-lldb-server-build
> > > > 38 #bug-30342.diff
> > > >67 # D51639-optim-issue.diff
> > > >54 #install-lldb-sb-headers.patch
> > I've dealt with those 4 and pushed changes to the 6.0 branch.
> 
> Sound great, do you want me to upload it? (or you can do it if you want)
> 
> many thanks!
> 
> S
> 
> 



Bug#919628: Apply Julia's LLVM patches

2019-03-07 Thread Sylvestre Ledru



Le 07/03/2019 à 14:25, Mo Zhou a écrit :

Hi,

On Wed, Mar 06, 2019 at 04:27:16PM +0100, Sylvestre Ledru wrote:

I am off this week. If you could do a merge request to address the issues,
that would be amazing :)

36 #fix-lldb-server-build
38 #bug-30342.diff
   67 # D51639-optim-issue.diff
   54 #install-lldb-sb-headers.patch

I've dealt with those 4 and pushed changes to the 6.0 branch.


Sound great, do you want me to upload it? (or you can do it if you want)

many thanks!

S



Bug#919628: Apply Julia's LLVM patches

2019-03-07 Thread Mo Zhou
Hi,

On Wed, Mar 06, 2019 at 04:27:16PM +0100, Sylvestre Ledru wrote:
> I am off this week. If you could do a merge request to address the issues,
> that would be amazing :)

> >36 #fix-lldb-server-build
> >38 #bug-30342.diff
> >   67 # D51639-optim-issue.diff
> >   54 #install-lldb-sb-headers.patch

I've dealt with those 4 and pushed changes to the 6.0 branch.

> >40 #clang-fix-cmpxchg8-detection-on-i386.patch

I cannot find any clue on how to rebase this patch due to significant
context change, even if I compared it with the code of llvm-7.



Bug#919628: Apply Julia's LLVM patches

2019-03-06 Thread Sylvestre Ledru

Hello

I am off this week. If you could do a merge request to address the 
issues, that would be amazing :)


Cheers

S

Le 05/03/2019 à 09:18, Mo Zhou a écrit :

Hi,

The current series applies without problem, do you mean these commented
patches? Apart from that, is there any other remaining work before a
team upload or an upload by you?

-- 1 --

   15 # commented because of bug 903709
   16 #force-gcc-header-obj.diff

leave it alone?

-- 2 --

   36 #fix-lldb-server-build
   38 #bug-30342.diff
   40 #clang-fix-cmpxchg8-detection-on-i386.patch

need to be rebased?

-- 3 --

  53 # Disable as it was merged upstream
  54 #install-lldb-sb-headers.patch

remove it?

-- 4 --

  66 # Doesn't fully apply
  67 # D51639-optim-issue.diff

rebase?

-- end

On Sun, Mar 03, 2019 at 11:12:08AM +0100, Sylvestre Ledru wrote:

Hello,


Le 28/02/2019 à 03:09, Mo Zhou a écrit :

Hi Sylvestre,

Should I file freeze exception requests against llvm-6.0 and julia,
so that we will have some more time to work on this?

I guess :)

I would appreciate help with fixing the application of the patches on
llvm-toolchain-6. I am too busy lately to finish in the next couple of
weeks.

Thanks

S






Bug#919628: Apply Julia's LLVM patches

2019-03-05 Thread Mo Zhou
Hi,

The current series applies without problem, do you mean these commented
patches? Apart from that, is there any other remaining work before a
team upload or an upload by you?

-- 1 --

  15 # commented because of bug 903709
  16 #force-gcc-header-obj.diff

leave it alone?

-- 2 --

  36 #fix-lldb-server-build
  38 #bug-30342.diff
  40 #clang-fix-cmpxchg8-detection-on-i386.patch

need to be rebased?

-- 3 --

 53 # Disable as it was merged upstream
 54 #install-lldb-sb-headers.patch

remove it?

-- 4 --

 66 # Doesn't fully apply
 67 # D51639-optim-issue.diff

rebase?

-- end

On Sun, Mar 03, 2019 at 11:12:08AM +0100, Sylvestre Ledru wrote:
> Hello,
> 
> 
> Le 28/02/2019 à 03:09, Mo Zhou a écrit :
> > Hi Sylvestre,
> > 
> > Should I file freeze exception requests against llvm-6.0 and julia,
> > so that we will have some more time to work on this?
> 
> I guess :)
> 
> I would appreciate help with fixing the application of the patches on
> llvm-toolchain-6. I am too busy lately to finish in the next couple of
> weeks.
> 
> Thanks
> 
> S
> 
> 



Bug#919628: Apply Julia's LLVM patches

2019-03-04 Thread Sylvestre Ledru

Hello,


Le 28/02/2019 à 03:09, Mo Zhou a écrit :

Hi Sylvestre,

Should I file freeze exception requests against llvm-6.0 and julia,
so that we will have some more time to work on this?


I guess :)

I would appreciate help with fixing the application of the patches on 
llvm-toolchain-6. I am too busy lately to finish in the next couple of 
weeks.


Thanks

S



Bug#919628: Apply Julia's LLVM patches

2019-02-27 Thread Mo Zhou
Hi Sylvestre,

Should I file freeze exception requests against llvm-6.0 and julia,
so that we will have some more time to work on this?

On Fri, Feb 22, 2019 at 08:41:14AM +0100, Sylvestre Ledru wrote:
> Hello,
> 
> I started the work ( 
> https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/commit/408f329cd84ad41cef7fc41ee4ac2b4b4573945f
> ) on that but:
> 
> * some patches didn't apply
> 
> * some are breaking the builds
> 
> I will try to finish this week end
> 
> Anyway, this should not prevent you to move back to llvm packages as
> 
> I took this fix  "Fix a baseline violation on armhf (Closes: #914268)"
> 
> Cheers,
> 
> S
> 
> 
> Le 22/02/2019 à 00:55, Mo Zhou a écrit :
> > Hi Sylvestre,
> > 
> > Any chance for getting this into Buster? If there is any, I'd like
> > to apply for freeze exception early, especially for the next Julia
> > LTS release 1.0.4 (likely to come out before 1st March)
> > 
> > On Fri, Feb 08, 2019 at 08:46:06AM +0100, Sylvestre Ledru wrote:
> > > Wahou, better than I was expecting! Many thanks!
> > > 
> > > I will take as much as possible! Thanks
> > > 
> > > S
> > > 
> > > 
> > > Le 08/02/2019 à 07:47, Mo Zhou a écrit :
> > > > Hi Sylvestre,
> > > > 
> > > > Please cherry-pick at least: (8) (12) (13) (14) (15)
> > > > 
> > > > Recommended to include: (1) (2) (4) (5) (11)
> > > > 
> > > > Feel free to ignore: (6) (9) (16) (17)
> > > > 
> > > > I have no idea about: (3) (7) (10)
> > > > 
> > > > https://github.com/JuliaLang/julia/tree/master/deps/patches
> > > > I've listed patches for llvm 6.0.1
> > > > 
> > > > 
> > > > 
> > > > 
> > > > (1) [unwind] llvm-D27629-AArch64-large_model_6.0.1
> > > > 
> > > >   Fix unwind info relocation with large code model on AArch64
> > > >   https://reviews.llvm.org/D27629
> > > > 
> > > > (2) [performance] llvm-D34078-vectorize-fdiv
> > > > 
> > > >   Enable support for floating-point division reductions
> > > >   https://reviews.llvm.org/D34078
> > > > 
> > > > (3) [nvptx] llvm-6.0-NVPTX-addrspaces
> > > > 
> > > >   No idea about this patch.
> > > > 
> > > > (4) [performance regression] llvm-D42262-jumpthreading-not-i1
> > > > 
> > > >   For details see Julia commit: 
> > > > e94a1f8b08e0bc3b8093d8f1dc2bf3c8f5d59519
> > > >   merged upstream: https://reviews.llvm.org/D42262
> > > > 
> > > > (5) [???] llvm-PPC-addrspaces
> > > > 
> > > >   merged upstream: https://reviews.llvm.org/D43781
> > > > 
> > > > (6) [ignore: mingw] llvm-6.0.0_D27296-libssp
> > > >   [ignore: mingw] llvm-6.0-D44650
> > > > 
> > > > (7) [???] llvm-D46460
> > > > 
> > > >   still under review: https://reviews.llvm.org/D46460
> > > > 
> > > > (8) [???] llvm-rL327898
> > > > 
> > > >   
> > > > https://github.com/JuliaLang/julia/blob/master/deps/patches/llvm-rL327898.patch
> > > >   Fixes Julia issues: #27055 #27080 #27032 #27603
> > > > 
> > > > (9) [ignore: compiler complain] llvm-6.0-DISABLE_ABI_CHECKS
> > > > 
> > > > (10) [profiling] llvm-OProfile-line-num
> > > > 
> > > > (11) [profiling] llvm-D44892-Perf-integration
> > > > 
> > > >merged upstream: https://reviews.llvm.org/D44892
> > > > 
> > > > (12) [bug fix] llvm-D49832-SCEVPred
> > > >[bug fix] llvm-rL323946-LSRTy
> > > > 
> > > >   Add LLVM patches for bugs introducing illegal ptrtoint
> > > >   rL323946 [LSR] Don't force bases of foldable formulae to the 
> > > > final type.
> > > >   D49832   [SCEV] Don't expand Wrap predicate using inttoptr in ni 
> > > > addrspaces
> > > > 
> > > > (13) llvm-D50010-VNCoercion-ni
> > > > 
> > > >   Fixes julia issue: #28360 (#28362)
> > > >   https://reviews.llvm.org/D50010
> > > > 
> > > > (14) llvm-D50167-scev-umin
> > > > 
> > > >   Add LLVM patch to explicitly represent umin in SCEV (#28403)
> > > >   Fix mix-type arithmetic detection in umin/max expansion (#28465)
> > > >   Fixes #28464
> > > >   Fixes #28379
> > > >   Fixes #28388
> > > > 
> > > > (15) llvm-rL326967-aligned-load
> > > > 
> > > >   Fixes incorrect codegen: #28726
> > > > 
> > > > (16) [ignore: win64] llvm-D51842-win64-byval-cc
> > > > 
> > > > (17) [...] llvm-D57118-powerpc
> > > > 
> > > >   https://reviews.llvm.org/D57118
> > > > 



Bug#919628: Apply Julia's LLVM patches

2019-02-21 Thread Mo Zhou
Hi Sylvestre,

Thank you! I think I'm filing an exception request for julia shortly.

On Fri, Feb 22, 2019 at 08:41:14AM +0100, Sylvestre Ledru wrote:
> Hello,
> 
> I started the work ( 
> https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/commit/408f329cd84ad41cef7fc41ee4ac2b4b4573945f
> ) on that but:
> 
> * some patches didn't apply

That's exactly why I do things about patchset quite slowly...
 
> * some are breaking the builds

Sounds strange. The LLVM embedded in Julia source doesn't fail to build.

> I will try to finish this week end
> 
> Anyway, this should not prevent you to move back to llvm packages as
> 
> I took this fix  "Fix a baseline violation on armhf (Closes: #914268)"

If the release team allows me to upload Julia 1.0.4 (next LTS release),
I'll remove the embedded LLVM (what a relief!)
 
> Cheers,
> 
> S



Bug#919628: Apply Julia's LLVM patches

2019-02-21 Thread Sylvestre Ledru

Hello,

I started the work ( 
https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/commit/408f329cd84ad41cef7fc41ee4ac2b4b4573945f 
) on that but:


* some patches didn't apply

* some are breaking the builds

I will try to finish this week end

Anyway, this should not prevent you to move back to llvm packages as

I took this fix  "Fix a baseline violation on armhf (Closes: #914268)"

Cheers,

S


Le 22/02/2019 à 00:55, Mo Zhou a écrit :

Hi Sylvestre,

Any chance for getting this into Buster? If there is any, I'd like
to apply for freeze exception early, especially for the next Julia
LTS release 1.0.4 (likely to come out before 1st March)

On Fri, Feb 08, 2019 at 08:46:06AM +0100, Sylvestre Ledru wrote:

Wahou, better than I was expecting! Many thanks!

I will take as much as possible! Thanks

S


Le 08/02/2019 à 07:47, Mo Zhou a écrit :

Hi Sylvestre,

Please cherry-pick at least: (8) (12) (13) (14) (15)

Recommended to include: (1) (2) (4) (5) (11)

Feel free to ignore: (6) (9) (16) (17)

I have no idea about: (3) (7) (10)

https://github.com/JuliaLang/julia/tree/master/deps/patches
I've listed patches for llvm 6.0.1




(1) [unwind] llvm-D27629-AArch64-large_model_6.0.1

  Fix unwind info relocation with large code model on AArch64
  https://reviews.llvm.org/D27629

(2) [performance] llvm-D34078-vectorize-fdiv

  Enable support for floating-point division reductions
  https://reviews.llvm.org/D34078

(3) [nvptx] llvm-6.0-NVPTX-addrspaces

  No idea about this patch.

(4) [performance regression] llvm-D42262-jumpthreading-not-i1

  For details see Julia commit: e94a1f8b08e0bc3b8093d8f1dc2bf3c8f5d59519
  merged upstream: https://reviews.llvm.org/D42262

(5) [???] llvm-PPC-addrspaces

  merged upstream: https://reviews.llvm.org/D43781

(6) [ignore: mingw] llvm-6.0.0_D27296-libssp
  [ignore: mingw] llvm-6.0-D44650

(7) [???] llvm-D46460

  still under review: https://reviews.llvm.org/D46460

(8) [???] llvm-rL327898

  
https://github.com/JuliaLang/julia/blob/master/deps/patches/llvm-rL327898.patch
  Fixes Julia issues: #27055 #27080 #27032 #27603

(9) [ignore: compiler complain] llvm-6.0-DISABLE_ABI_CHECKS

(10) [profiling] llvm-OProfile-line-num

(11) [profiling] llvm-D44892-Perf-integration

   merged upstream: https://reviews.llvm.org/D44892

(12) [bug fix] llvm-D49832-SCEVPred
   [bug fix] llvm-rL323946-LSRTy

  Add LLVM patches for bugs introducing illegal ptrtoint
  rL323946 [LSR] Don't force bases of foldable formulae to the final type.
  D49832   [SCEV] Don't expand Wrap predicate using inttoptr in ni 
addrspaces

(13) llvm-D50010-VNCoercion-ni

  Fixes julia issue: #28360 (#28362)
  https://reviews.llvm.org/D50010

(14) llvm-D50167-scev-umin

  Add LLVM patch to explicitly represent umin in SCEV (#28403)
  Fix mix-type arithmetic detection in umin/max expansion (#28465)
  Fixes #28464
  Fixes #28379
  Fixes #28388

(15) llvm-rL326967-aligned-load

  Fixes incorrect codegen: #28726

(16) [ignore: win64] llvm-D51842-win64-byval-cc

(17) [...] llvm-D57118-powerpc

  https://reviews.llvm.org/D57118





Bug#919628: Apply Julia's LLVM patches

2019-02-21 Thread Mo Zhou
Hi Sylvestre,

Any chance for getting this into Buster? If there is any, I'd like
to apply for freeze exception early, especially for the next Julia
LTS release 1.0.4 (likely to come out before 1st March)

On Fri, Feb 08, 2019 at 08:46:06AM +0100, Sylvestre Ledru wrote:
> Wahou, better than I was expecting! Many thanks!
> 
> I will take as much as possible! Thanks
> 
> S
> 
> 
> Le 08/02/2019 à 07:47, Mo Zhou a écrit :
> > Hi Sylvestre,
> > 
> > Please cherry-pick at least: (8) (12) (13) (14) (15)
> > 
> > Recommended to include: (1) (2) (4) (5) (11)
> > 
> > Feel free to ignore: (6) (9) (16) (17)
> > 
> > I have no idea about: (3) (7) (10)
> > 
> > https://github.com/JuliaLang/julia/tree/master/deps/patches
> > I've listed patches for llvm 6.0.1
> > 
> > 
> > 
> > 
> > (1) [unwind] llvm-D27629-AArch64-large_model_6.0.1
> > 
> >  Fix unwind info relocation with large code model on AArch64
> >  https://reviews.llvm.org/D27629
> > 
> > (2) [performance] llvm-D34078-vectorize-fdiv
> > 
> >  Enable support for floating-point division reductions
> >  https://reviews.llvm.org/D34078
> > 
> > (3) [nvptx] llvm-6.0-NVPTX-addrspaces
> > 
> >  No idea about this patch.
> > 
> > (4) [performance regression] llvm-D42262-jumpthreading-not-i1
> > 
> >  For details see Julia commit: e94a1f8b08e0bc3b8093d8f1dc2bf3c8f5d59519
> >  merged upstream: https://reviews.llvm.org/D42262
> > 
> > (5) [???] llvm-PPC-addrspaces
> > 
> >  merged upstream: https://reviews.llvm.org/D43781
> > 
> > (6) [ignore: mingw] llvm-6.0.0_D27296-libssp
> >  [ignore: mingw] llvm-6.0-D44650
> > 
> > (7) [???] llvm-D46460
> > 
> >  still under review: https://reviews.llvm.org/D46460
> > 
> > (8) [???] llvm-rL327898
> > 
> >  
> > https://github.com/JuliaLang/julia/blob/master/deps/patches/llvm-rL327898.patch
> >  Fixes Julia issues: #27055 #27080 #27032 #27603
> > 
> > (9) [ignore: compiler complain] llvm-6.0-DISABLE_ABI_CHECKS
> > 
> > (10) [profiling] llvm-OProfile-line-num
> > 
> > (11) [profiling] llvm-D44892-Perf-integration
> > 
> >   merged upstream: https://reviews.llvm.org/D44892
> > 
> > (12) [bug fix] llvm-D49832-SCEVPred
> >   [bug fix] llvm-rL323946-LSRTy
> > 
> >  Add LLVM patches for bugs introducing illegal ptrtoint
> >  rL323946 [LSR] Don't force bases of foldable formulae to the final 
> > type.
> >  D49832   [SCEV] Don't expand Wrap predicate using inttoptr in ni 
> > addrspaces
> > 
> > (13) llvm-D50010-VNCoercion-ni
> > 
> >  Fixes julia issue: #28360 (#28362)
> >  https://reviews.llvm.org/D50010
> > 
> > (14) llvm-D50167-scev-umin
> > 
> >  Add LLVM patch to explicitly represent umin in SCEV (#28403)
> >  Fix mix-type arithmetic detection in umin/max expansion (#28465)
> >  Fixes #28464
> >  Fixes #28379
> >  Fixes #28388
> > 
> > (15) llvm-rL326967-aligned-load
> > 
> >  Fixes incorrect codegen: #28726
> > 
> > (16) [ignore: win64] llvm-D51842-win64-byval-cc
> > 
> > (17) [...] llvm-D57118-powerpc
> > 
> >  https://reviews.llvm.org/D57118
> > 



Bug#919628: Apply Julia's LLVM patches

2019-02-07 Thread Sylvestre Ledru

Wahou, better than I was expecting! Many thanks!

I will take as much as possible! Thanks

S


Le 08/02/2019 à 07:47, Mo Zhou a écrit :

Hi Sylvestre,

Please cherry-pick at least: (8) (12) (13) (14) (15)

Recommended to include: (1) (2) (4) (5) (11)

Feel free to ignore: (6) (9) (16) (17)

I have no idea about: (3) (7) (10)

https://github.com/JuliaLang/julia/tree/master/deps/patches
I've listed patches for llvm 6.0.1




(1) [unwind] llvm-D27629-AArch64-large_model_6.0.1

 Fix unwind info relocation with large code model on AArch64
 https://reviews.llvm.org/D27629

(2) [performance] llvm-D34078-vectorize-fdiv

 Enable support for floating-point division reductions
 https://reviews.llvm.org/D34078

(3) [nvptx] llvm-6.0-NVPTX-addrspaces

 No idea about this patch.

(4) [performance regression] llvm-D42262-jumpthreading-not-i1

 For details see Julia commit: e94a1f8b08e0bc3b8093d8f1dc2bf3c8f5d59519
 merged upstream: https://reviews.llvm.org/D42262

(5) [???] llvm-PPC-addrspaces

 merged upstream: https://reviews.llvm.org/D43781

(6) [ignore: mingw] llvm-6.0.0_D27296-libssp
 [ignore: mingw] llvm-6.0-D44650

(7) [???] llvm-D46460

 still under review: https://reviews.llvm.org/D46460

(8) [???] llvm-rL327898

 
https://github.com/JuliaLang/julia/blob/master/deps/patches/llvm-rL327898.patch
 Fixes Julia issues: #27055 #27080 #27032 #27603

(9) [ignore: compiler complain] llvm-6.0-DISABLE_ABI_CHECKS

(10) [profiling] llvm-OProfile-line-num

(11) [profiling] llvm-D44892-Perf-integration

  merged upstream: https://reviews.llvm.org/D44892

(12) [bug fix] llvm-D49832-SCEVPred
  [bug fix] llvm-rL323946-LSRTy

 Add LLVM patches for bugs introducing illegal ptrtoint
 rL323946 [LSR] Don't force bases of foldable formulae to the final type.
 D49832   [SCEV] Don't expand Wrap predicate using inttoptr in ni addrspaces

(13) llvm-D50010-VNCoercion-ni

 Fixes julia issue: #28360 (#28362)
 https://reviews.llvm.org/D50010

(14) llvm-D50167-scev-umin

 Add LLVM patch to explicitly represent umin in SCEV (#28403)
 Fix mix-type arithmetic detection in umin/max expansion (#28465)
 Fixes #28464
 Fixes #28379
 Fixes #28388

(15) llvm-rL326967-aligned-load

 Fixes incorrect codegen: #28726

(16) [ignore: win64] llvm-D51842-win64-byval-cc

(17) [...] llvm-D57118-powerpc

 https://reviews.llvm.org/D57118





Bug#919628: Apply Julia's LLVM patches

2019-02-07 Thread Mo Zhou
Hi Sylvestre,

Please cherry-pick at least: (8) (12) (13) (14) (15)

Recommended to include: (1) (2) (4) (5) (11)

Feel free to ignore: (6) (9) (16) (17)

I have no idea about: (3) (7) (10)

https://github.com/JuliaLang/julia/tree/master/deps/patches
I've listed patches for llvm 6.0.1




(1) [unwind] llvm-D27629-AArch64-large_model_6.0.1

Fix unwind info relocation with large code model on AArch64
https://reviews.llvm.org/D27629

(2) [performance] llvm-D34078-vectorize-fdiv

Enable support for floating-point division reductions
https://reviews.llvm.org/D34078

(3) [nvptx] llvm-6.0-NVPTX-addrspaces

No idea about this patch.

(4) [performance regression] llvm-D42262-jumpthreading-not-i1

For details see Julia commit: e94a1f8b08e0bc3b8093d8f1dc2bf3c8f5d59519
merged upstream: https://reviews.llvm.org/D42262

(5) [???] llvm-PPC-addrspaces

merged upstream: https://reviews.llvm.org/D43781

(6) [ignore: mingw] llvm-6.0.0_D27296-libssp
[ignore: mingw] llvm-6.0-D44650

(7) [???] llvm-D46460

still under review: https://reviews.llvm.org/D46460

(8) [???] llvm-rL327898


https://github.com/JuliaLang/julia/blob/master/deps/patches/llvm-rL327898.patch
Fixes Julia issues: #27055 #27080 #27032 #27603

(9) [ignore: compiler complain] llvm-6.0-DISABLE_ABI_CHECKS

(10) [profiling] llvm-OProfile-line-num

(11) [profiling] llvm-D44892-Perf-integration

 merged upstream: https://reviews.llvm.org/D44892

(12) [bug fix] llvm-D49832-SCEVPred
 [bug fix] llvm-rL323946-LSRTy

Add LLVM patches for bugs introducing illegal ptrtoint
rL323946 [LSR] Don't force bases of foldable formulae to the final type.
D49832   [SCEV] Don't expand Wrap predicate using inttoptr in ni addrspaces

(13) llvm-D50010-VNCoercion-ni

Fixes julia issue: #28360 (#28362)
https://reviews.llvm.org/D50010

(14) llvm-D50167-scev-umin

Add LLVM patch to explicitly represent umin in SCEV (#28403)
Fix mix-type arithmetic detection in umin/max expansion (#28465)
Fixes #28464
Fixes #28379
Fixes #28388

(15) llvm-rL326967-aligned-load

Fixes incorrect codegen: #28726

(16) [ignore: win64] llvm-D51842-win64-byval-cc

(17) [...] llvm-D57118-powerpc

https://reviews.llvm.org/D57118



Bug#919628: Apply Julia's LLVM patches

2019-02-03 Thread M. Zhou
On Sun, Feb 03, 2019 at 10:30:26AM +0100, Sylvestre Ledru wrote:
> > > I'm glad to assemble a detailed list of patches and their
> > > corresponding bugs
> > > if you ask. And note that I'm traveling tomorrow (Jan 20) so please
> > > don't
> > > expect response from me on that day.
> > 
> > if you could do that, this would be great! thanks.
> > 
> Ping!

TBH it's hard for me to understand patches for LLVM and such
difficulty resulted in me dragging this TODO item... Some of
Julia's patches differ from upstream differential, and some
of them needs to be rebased on Debian's source...

Anyway I think I'll try it again... but I cannot promise
to provide a clean patch set that doesn't need rebase.



Bug#919628: Apply Julia's LLVM patches

2019-02-03 Thread Sylvestre Ledru

Hello,


Le 23/01/2019 à 22:57, Sylvestre Ledru a écrit :


Le 19/01/2019 à 03:20, Lumin a écrit :


I think the best documentation about these patches are git commit
messages following git blame. For example

https://github.com/JuliaLang/julia/commit/e99204b52be23c49b5185d270b6697b097b16513 



refers to a bug:

https://github.com/JuliaLang/julia/issues/28726

I'm glad to assemble a detailed list of patches and their 
corresponding bugs
if you ask. And note that I'm traveling tomorrow (Jan 20) so please 
don't

expect response from me on that day.


if you could do that, this would be great! thanks.


Ping!

Thanks

S



Bug#919628: Apply Julia's LLVM patches

2019-01-23 Thread Sylvestre Ledru



Le 19/01/2019 à 03:20, Lumin a écrit :


I think the best documentation about these patches are git commit
messages following git blame. For example

https://github.com/JuliaLang/julia/commit/e99204b52be23c49b5185d270b6697b097b16513

refers to a bug:

https://github.com/JuliaLang/julia/issues/28726

I'm glad to assemble a detailed list of patches and their corresponding bugs
if you ask. And note that I'm traveling tomorrow (Jan 20) so please don't
expect response from me on that day.


if you could do that, this would be great! thanks.

S



Bug#919628: Apply Julia's LLVM patches

2019-01-18 Thread Lumin
Hi,

On Fri, 18 Jan 2019 at 10:31, Sylvestre Ledru  wrote:
> > Please check and apply Julia's LLVM patches to Debian's LLVM 6.0.1:
> >
> > https://github.com/JuliaLang/julia/blob/master/deps/llvm.mk#L390-L432
> > https://github.com/JuliaLang/julia/tree/master/deps/patches
> >
> > I don't quite understand what these patches are doing.
>
> Would be nice to have a better understanding of why they have been added.
>
> Performances, bug, stability, etc.

Upstream's note about these patches: https://github.com/julialang/julia#llvm
These patches relate to performance and bugs according to the above note.

> Besides the arm issue, what otherwise is blocking you with the current
> llvm-toolchain-6 ?

Nothing else. I have no reason to keep an embedded llvm if (1) the arm
problem and (2) the upstream patches have been dealt with.

> Do you know if there is a documentation somewhere?

I think the best documentation about these patches are git commit
messages following git blame. For example

https://github.com/JuliaLang/julia/commit/e99204b52be23c49b5185d270b6697b097b16513

refers to a bug:

https://github.com/JuliaLang/julia/issues/28726

I'm glad to assemble a detailed list of patches and their corresponding bugs
if you ask. And note that I'm traveling tomorrow (Jan 20) so please don't
expect response from me on that day.

> > So in order to
> > use upstream's LLVM patches, the most straightforward way is to
> > ship an embedded LLVM in Julia's source package.
>
> Sure but it doesn't scale and this is against the Debian policy (cf 4.13).

Indeed, and embedding an LLVM makes the package much much harder to build.

> We have already too many versions of llvm in the archive, no need to add
> one more (esp
> as I am active on llvm-toolchain-*)

Although patching LLVM for julia requires some time, the resulting Debian
package could do very well with Julia 1.0.X (upstream's long time support
branch, currently in unstable, planned for Buster), and Julia 1.X (non-LTS
branch. Not decided whether to upload)



Bug#919628: Apply Julia's LLVM patches

2019-01-18 Thread Sylvestre Ledru

Hello,

Le 18/01/2019 à 04:45, M. Zhou a écrit :

Package: llvm-6.0-dev
Version: 1:6.0.1-9.2
X-Debbugs-CC: gin...@debian.org

Dear LLVM maintainers,

Please check and apply Julia's LLVM patches to Debian's LLVM 6.0.1:

https://github.com/JuliaLang/julia/blob/master/deps/llvm.mk#L390-L432
https://github.com/JuliaLang/julia/tree/master/deps/patches

I don't quite understand what these patches are doing.


Would be nice to have a better understanding of why they have been added.

Performances, bug, stability, etc.

Besides the arm issue, what otherwise is blocking you with the current 
llvm-toolchain-6 ?


Do you know if there is a documentation somewhere?


So in order to
use upstream's LLVM patches, the most straightforward way is to
ship an embedded LLVM in Julia's source package.


Sure but it doesn't scale and this is against the Debian policy (cf 4.13).

We have already too many versions of llvm in the archive, no need to add 
one more (esp

as I am active on llvm-toolchain-*)

Sylvestre



Bug#919628: Apply Julia's LLVM patches

2019-01-17 Thread M. Zhou
Package: llvm-6.0-dev
Version: 1:6.0.1-9.2
X-Debbugs-CC: gin...@debian.org

Dear LLVM maintainers,

Please check and apply Julia's LLVM patches to Debian's LLVM 6.0.1:

https://github.com/JuliaLang/julia/blob/master/deps/llvm.mk#L390-L432
https://github.com/JuliaLang/julia/tree/master/deps/patches

I don't quite understand what these patches are doing. So in order to
use upstream's LLVM patches, the most straightforward way is to
ship an embedded LLVM in Julia's source package.