From 4adb401308dc9e7072c1bc134a970d1c58992961 Mon Sep 17 00:00:00 2001 From: Simeon David Schaub Date: Fri, 14 Nov 2025 10:51:16 +0100 Subject: [PATCH] use `CC.MAX_INLINE_COST` instead of `typemax(Int)` as cost threshold for `always_inline` to avoid integer overflow fix JuliaGPU/AMDGPU.jl#846 alternative to JuliaLang/julia#60121 --- src/interface.jl | 2 +- test/gcn.jl | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/interface.jl b/src/interface.jl index 15a6a51c..21ddcf57 100644 --- a/src/interface.jl +++ b/src/interface.jl @@ -324,7 +324,7 @@ function optimization_params(@nospecialize(job::CompilerJob)) kwargs = NamedTuple() if job.config.always_inline - kwargs = (kwargs..., inline_cost_threshold=typemax(Int)) + kwargs = (kwargs..., inline_cost_threshold=Int(CC.MAX_INLINE_COST)) end return CC.OptimizationParams(;kwargs...) diff --git a/test/gcn.jl b/test/gcn.jl index 8e1f2ad0..95641a44 100644 --- a/test/gcn.jl +++ b/test/gcn.jl @@ -37,6 +37,13 @@ end end end +@testset "https://github.com/JuliaGPU/AMDGPU.jl/issues/846" begin + ir, rt = GCN.code_typed((Tuple{Tuple{Val{4}}, Tuple{Float32}},); always_inline=true) do t + t[1] + end |> only + @test rt == Tuple{Val{4}} +end + end ############################################################################################