Bug 70227 - OpenCL reaper-prime app crashes due to atomic_or unimplemented
Summary: OpenCL reaper-prime app crashes due to atomic_or unimplemented
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/r600 (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-07 14:18 UTC by Alexey Shvetsov
Modified: 2015-07-29 15:01 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Alexey Shvetsov 2013-10-07 14:18:20 UTC
Miner app https://github.com/arnuschky/primecoin-reaper.git crashes with 

./reaper 
\|||||||||||||||||||||/
-  Reaper v13 64-bit  -
-    PRIME BETA 2     -
-   coded by mtrlt    -
/|||||||||||||||||||||\


Warning: unknown property "use_gpu" in configuration file.
I'm now mining primecoin!
Share thread started
GeneratePrimeTable() : setting nSievePercentage = 1, nSieveSize = 100000
GeneratePrimeTable() : prime table [1, 100000] generated with 9592 primes
Available CPU mining algorithms: hp7
Using default: hp7
Creating 1 CPU thread.
1...Warning: can't set thread priority
done
List of platforms:
        0       Default
Using platform number 0

Using device 0
OpenCL device 0........
Compiling kernel... this could take up to 2 minutes.
2 warnings generated.
Building kernel CalculateMultipliers
Building kernel Sieve
Building kernel Combine
Building kernel Fermat
done
Compiling kernel... this could take up to 2 minutes.
2 warnings generated.
Building kernel CalculateMultipliers
Building kernel Sieve
Building kernel Combine
Building kernel Fermat
0x7f735cdadd00: i32 = GlobalAddress<i32 (...)* @atomic_or> 0 [ORD=104]
Stack dump:
0.      Running pass 'Function Pass Manager' on module 'radeon'.
1.      Running pass 'AMDGPU DAG->DAG Pattern Instruction Selection' on function '@Sieve'
Segmentation fault
Comment 1 Alexey Shvetsov 2013-10-24 15:49:21 UTC
With recent llvm master branch build 
now it failes with

Building kernel CalculateMultipliers
Building kernel Sieve
Building kernel Combine
Building kernel Fermat
LLVM ERROR: Cannot select: 0x7f638ce2c2d0: i32,ch = AtomicLoadAdd 0x7f638ce86840, 0x7f638ce25e60, 0x7f638ce25f60<Volatile LDST4[%counter]> [ORD=36] [ID=12]
  0x7f638ce25e60: i32,ch = CopyFromReg 0x7f638ce86840, 0x7f638ce2b7c0 [ORD=36] [ID=8]
    0x7f638ce2b7c0: i32 = Register %vreg4 [ID=2]
  0x7f638ce25f60: i32 = Constant<1> [ID=1]
In function: Combine
Comment 2 Alexey Shvetsov 2013-10-24 15:53:24 UTC
And sometimes again with old error

Building kernel Combine
Building kernel Fermat
0x7f19ac3e0a30: i32 = GlobalAddress<i32 (...)* @atomic_or> 0 [ORD=104]
Stack dump:
0.      Running pass 'Function Pass Manager' on module 'radeon'.
1.      Running pass 'AMDGPU DAG->DAG Pattern Instruction Selection' on function '@Sieve'
Comment 3 Serge Martin 2015-07-29 14:58:39 UTC
atomic should be ok with libclc from r217914 (the 17/09/2014)


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.