[libcxx-commits] [PATCH] D114473: [runtimes] Remove support for building in 32 bits mode on a 64 bit target
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Nov 23 13:39:34 PST 2021
ldionne created this revision.
Herald added subscribers: libcxx-commits, arichardson, mgorny.
Herald added a project: libunwind.
Herald added a reviewer: libunwind.
ldionne requested review of this revision.
Herald added projects: libc++, libc++abi.
Herald added a reviewer: libc++.
Herald added a reviewer: libc++abi.
This patch is a RFC for removing a configuration that I've never fully
understood why it was supported -- building with -m32. Instead of doing
this, a better alternative would be to create a new target triple with
the desired characteristics, which would be more straightforward to
support.
As it stands, -m32 has several issues, which all seem to be related to
the fact that it's not well supported by the operating systems that
libc++ support. The simplest path towards fixing this is to remove
support for the configuration, which is also the best course of action
if there is little interest for keeping that configuration. If there
is a desire to keep this configuration around, we'll need to do some
work to figure out the underlying issues and fix them.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D114473
Files:
libcxx/CMakeLists.txt
libcxx/cmake/caches/Generic-32bits.cmake
libcxx/docs/BuildingLibcxx.rst
libcxx/docs/ReleaseNotes.rst
libcxx/test/CMakeLists.txt
libcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
libcxx/test/libcxx/thread/thread.condition/PR30202_notify_from_pthread_created_thread.pass.cpp
libcxx/test/libcxx/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
libcxx/test/libcxx/thread/thread.threads/thread.thread.this/sleep_for.signals.pass.cpp
libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp
libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp
libcxx/test/std/thread/futures/futures.async/async.pass.cpp
libcxx/test/std/thread/futures/futures.shared_future/wait.pass.cpp
libcxx/test/std/thread/futures/futures.shared_future/wait_for.pass.cpp
libcxx/test/std/thread/futures/futures.shared_future/wait_until.pass.cpp
libcxx/test/std/thread/futures/futures.unique_future/wait.pass.cpp
libcxx/test/std/thread/futures/futures.unique_future/wait_for.pass.cpp
libcxx/test/std/thread/futures/futures.unique_future/wait_until.pass.cpp
libcxx/test/std/thread/thread.barrier/arrive.pass.cpp
libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
libcxx/test/std/thread/thread.barrier/completion.pass.cpp
libcxx/test/std/thread/thread.condition/notify_all_at_thread_exit.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvar/notify_all.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_for_pred.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvar/wait_until_pred.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvarany/notify_one.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_pred.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until.pass.cpp
libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_pred.pass.cpp
libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
libcxx/test/std/thread/thread.latch/count_down.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_duration.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_time_point.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.cons/mutex_try_to_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_duration.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_time_point.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/mutex_try_to_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/lock_shared.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.shared_mutex.requirements/thread.shared_mutex.class/try_lock_shared.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp
libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp
libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
libcxx/test/std/thread/thread.semaphore/binary.pass.cpp
libcxx/test/std/thread/thread.semaphore/release.pass.cpp
libcxx/test/std/thread/thread.semaphore/timed.pass.cpp
libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp
libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_until.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.file/now.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.file/to_from_sys.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.hires/now.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.steady/now.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.system/from_time_t.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.system/now.pass.cpp
libcxx/test/std/utilities/time/time.clock/time.clock.system/to_time_t.pass.cpp
libcxx/utils/ci/buildkite-pipeline.yml
libcxx/utils/ci/run-buildbot
libcxx/utils/libcxx/test/params.py
libcxxabi/CMakeLists.txt
libcxxabi/test/CMakeLists.txt
libcxxabi/test/test_exception_storage.pass.cpp
libunwind/CMakeLists.txt
libunwind/docs/BuildingLibunwind.rst
libunwind/test/CMakeLists.txt
libunwind/test/remember_state_leak.pass.sh.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D114473.389309.patch
Type: text/x-patch
Size: 69797 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20211123/29af908a/attachment-0001.bin>
More information about the libcxx-commits
mailing list