Çoğu işlemci mimarisinde, dallanma (branch) komutları sınırlı bir menzile sahip PC-göreceli adresleme kullanır. Hedef adres çok uzak olduğunda, dallanma "menzil dışı" kalır ve özel bir işlem gerektirir. Örneğin, AArch64 mimarisinde bir bl (branch and link) komutu yalnızca ±128MiB'lik bir menzile ulaşabilir. Eğer bir fonksiyon çağrısı bu menzilin dışındaysa, doğrudan kodlanamaz ve bağlayıcı (linker) "relocation out of range" gibi hatalarla karşılaşır. Bu tür sorunları önlemek ve doğru çalıştırılabilir dosyalar üretmek için, derleyici (compiler), assembler ve bağlayıcıdan oluşan araç zinciri (toolchain) bu durumu şeffaf bir şekilde ele almalıdır.
Bu makale, uzun dallanma sorununu çözmek için derleyicilerin, assembler'ların ve bağlayıcıların nasıl birlikte çalıştığını inceliyor. Derleyici, bir fonksiyon içindeki koşullu dallanma komutlarının menzilini aşan dallanmaları yönetir. Assembler, bir bölüm (section) içindeki mesafenin assembly zamanında bilindiği dallanmaları ele alır. Bağlayıcı ise, nihai düzenleme (final layout) sırasında keşfedilen bölümler arası ve nesneler arası dallanmaları yönetir.
Farklı işlemci mimarilerinin dallanma menzili kısıtlamaları önemli ölçüde değişiklik gösterir. Örneğin, AArch64'te koşulsuz dallanmalar ±128MiB'ye kadar uzanırken, koşullu dallanmalar için bu menzil ±1MiB'dir. x86-64 mimarisi ise hem koşulsuz hem de koşullu dallanmalar için ±2GiB gibi çok daha geniş bir menzil sunar. PowerPC64 ve RISC-V gibi diğer mimariler de kendi özel menzil kısıtlamalarına ve bu kısıtlamaları aşmak için kullanılan tekniklere sahiptir. Araç zinciri, bu mimari farklılıklarını dikkate alarak, uzak hedeflere ulaşmak için genellikle "thunk" veya "veneer" adı verilen küçük ara kod parçacıkları ekleyerek dallanma menzilini genişletir. Bu sayede, geliştiricilerin büyük kod tabanlarıyla çalışırken menzil sorunlarıyla karşılaşması engellenir.
Modern yazılım geliştirme süreçlerinde büyük kod tabanlarının ve karmaşık sistemlerin derlenmesi ve bağlanması sırasında ortaya çıkan temel bir teknik engelin nasıl aşıldığını açıklıyor.