<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/63956>63956</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
Stack overflow / segv in attributor on minimal subset of libc
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
jdoerfert,
JonChesterfield,
jhuber6
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
JonChesterfield
</td>
</tr>
</table>
<pre>
Discovered while using parts of llvm libc as a debugging tool. Symptom was clang crashing at O1 or higher.
```
target datalayout = "e-p:64:64-p1:64:64-p2:32:32-p3:32:32-p4:64:64-p5:32:32-p6:32:32-p7:160:256:256:32-p8:128:128-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-v2048:2048-n32:\
64-S32-A5-G1-ni:7:8"
target triple = "amdgcn-amd-amdhsa"
%struct.foo = type { %struct.pluto, ptr, i64 }
%struct.pluto = type { [512 x i8], ptr }
@global.2 = internal addrspace(1) global %struct.foo { %struct.pluto zeroinitializer, ptr addrspacecast (ptr addrspace(1) @global.2 to ptr), i64 0 }
; Function Attrs: nounwind
define internal void @hoge(ptr noundef %arg) {
bb:
%load = load i64, ptr addrspace(1) getelementptr inbounds (%struct.foo, ptr addrspace(1) @global.2, i64 0, i32 2), align 8
ret void
}
!0 = !{!"clang version 17.0.0 (git@github.com:llvm/llvm-project.git f717c2d4f2b7663317e46af069aaf88edca760de)"}
```
Reproduce
```
opt -mtriple=amdgcn-amd-amdhsa -amdgpu-attributor bugpoint-reduced-simplified.ll
```
Godbolt crashing (had to delete the target layout string) https://godbolt.org/z/MT5vbj5cx
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx8VduOozgQ_RrnpUQEZS7JQx7SHWWklVYr7ewPGFyAe42NbENPz9evDCSdSWtHSsq3quNTx4UtvFedITqx4oUhvklLriUXGCLDV4b4hzWvPflArlWk5X3-rZ9qcmUcF5edmEJv3enJeVdb-XG6KN_YmRxJeO-VJpi8Mh2MwgUPtgWt5wG0qhsQHgRIqqeuix7BWr2H7x_DGOwA78JDo4XpoHHC99FBBPgrA-ugV11Pbs_SC0vPmy3T7bcMg3AdBZAiCC0-7BSA8QswREpGxs9lvphkzB4HyPiZryYZ-eMgf3QrHlfKx0HF-DkrU8bPWJR3G1cOcQU3m6gb1pyVS0gyY756zjewOT9sPsdyC5uzI66oyXzfIJmLLM4WGSZzli44sUlmTBeI2CRmgWXF6ypPmSffOSbnIvmWJUYxfo7UD_F0H-ULTo2abtKJQXaNScQg47_34u6-WSx8cFMT9q21S1D4GAlY9QKfS6OegmX4CmNwsVFlDqy6PCMsbk8YxUuRIfwAdWDFZYN4iF1tnnba1kLvcYlWJpAzQoOQ0vlRNMTwkDE8wuoGT6S_coWf5KwyKiih1U9yt43vgI3wARgefpm87fLIJ9g16eMt7_QLe_4C18k0QVkD5xCcZ_wMxk7mXRkJq5OkVhn6zGy2SsZ9etvRRiNGSGpjKsJ1kUfMbA2v61gISxeig7ZCLlItnViZzwneFaNAmgYyIS4rU8ddfEz9FxH_N_5Bi7sCS4cj4CaL0KozcHgUBcBRWLLcZp80wyzdKjSLSWLGENeLYybno5JZtU_3aSTaqRBZqNBP9b6xA-PneB0xvMYmGZ19oybsOxWgrbKqQZm3WFdlyXlWUV6KNi2PQrSHA8lGVGUqaSGOz6R-vY1W-zeNzsqpod942jFAMqzfHeOXL58cxLYbp0SE4FQ9BeugnrrRKhMSRxFdJl4No1atIrnX-jeEvllZWx0-L1iGh17IWKiSNAWC0BNsd8F2jfrglFlKqg9hjPXJ8Mrw2q1Yexvr7fqT4fXPf4q5fiuaH-tmO3ni8siPYkenrDwcq6rMs3zXn2RxwDZvCpE3ddpwznMSSEVzrKlpeFbv1AlT5GmVHbMc0zTbi0q2dc2xzquiweLI8pQGofQ-HmJksFPeT3Qq-bEod1rUpP324Bl6h2Vxe8jcaTn4euo8y1OtfPCfKEEFTafvQTT_QnzRWm3fgeEVPHUzKAMPh2ANDMqoQWjwU-0pLE-dqpvd5PTpSavP-lsL76n-GF4Xjp7hdcnhvwAAAP__Vu5Fag">