Some 32-bit arch need explicit linking to libatomic, otherwise the code fails at linking:

/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_databases_redis/redis/work/compwrap/cc/opt/local/bin/gcc-mp-14 -Wl,-headerpad_max_install_names -L/opt/local/lib -lMacportsLegacySupport -arch ppc -O3 -flto=auto -fno-omit-frame-pointer  -g -ggdb -L/usr/local/opt/openssl/lib -o redis-server threads_mngr.o adlist.o quicklist.o ae.o anet.o dict.o ebuckets.o mstr.o kvstore.o server.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o cluster.o cluster_legacy.o crc16.o endianconv.o slowlog.o eval.o bio.o rio.o rand.o memtest.o syscheck.o crcspeed.o crc64.o bitops.o sentinel.o notify.o setproctitle.o blocked.o hyperloglog.o latency.o sparkline.o redis-check-rdb.o redis-check-aof.o geo.o lazyfree.o module.o evict.o expire.o geohash.o geohash_helper.o childinfo.o defrag.o siphash.o rax.o t_stream.o listpack.o localtime.o lolwut.o lolwut5.o lolwut6.o acl.o tracking.o socket.o tls.o sha256.o timeout.o setcpuaffinity.o monotonic.o mt19937-64.o resp_parser.o call_reply.o script_lua.o script.o functions.o function_lua.o commands.o strl.o connection.o unix.o logreqres.o ../deps/hiredis/libhiredis.a ../deps/lua/src/liblua.a ../deps/hdr_histogram/libhdrhistogram.a ../deps/fpconv/libfpconv.a ../deps/jemalloc/lib/libjemalloc.a -lm -ldl ../deps/hiredis/libhiredis_ssl.a -L/opt/local/libexec/openssl3/lib -lssl -L/opt/local/libexec/openssl3/lib -lcrypto
ld: warning: directory '/usr/local/opt/openssl/lib' following -L not found
Undefined symbols:
  "___atomic_load_8", referenced from:
      _beforeSleep in server.o
      _serverCron in server.o
      _serverCron in server.o
      _serverCron in server.o
      _serverCron in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _genRedisInfoString in server.o
      _backgroundRewriteDoneHandler in aof.o
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
  "___atomic_store_8", referenced from:
      _resetServerStats in server.o
      _resetServerStats in server.o
      _resetServerStats in server.o
      _resetServerStats in server.o
      _resetServerStats in server.o
      _resetServerStats in server.o
      _resetServerStats in server.o
      _initServerConfig in server.o
      _initServerConfig in server.o
      _flushAppendOnlyFile in aof.o
      _flushAppendOnlyFile in aof.o
      _rewriteAppendOnlyFileBackground in aof.o
      _stopAppendOnly in aof.o
      _bioProcessBackgroundJobs in bio.o
  "___atomic_compare_exchange_8", referenced from:
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
  "___atomic_fetch_add_8", referenced from:
      _createClient in networking.o
      _writeToClient.constprop.0 in networking.o
      _writeToClient.constprop.0 in networking.o
      _writeToClient.constprop.0 in networking.o
      _writeToClient in networking.o
      _writeToClient in networking.o
      _writeToClient in networking.o
      _readQueryFromClient in networking.o
      _readQueryFromClient in networking.o
      _readQueryFromClient in networking.o
      _readQueryFromClient in networking.o
      _rdbPipeReadHandler in replication.o
      _sendBulkToSlave in replication.o
      _sendBulkToSlave in replication.o
      _rdbPipeWriteHandler in replication.o
      _readSyncBulkPayload in replication.o
      _readSyncBulkPayload in replication.o
      _rdbLoadProgressCallback in rdb.o
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
      _hdr_record_values_atomic in libhdrhistogram.a(hdr_histogram.o)
ld: symbol(s) not found
collect2: error: ld returned 1 exit status
make[1]: *** [redis-server] Error 1

AFAIK, this applies to arm, ppc and likely mips, regardless of the platform.