[MacPorts] #37846: gcc47 cannot compile valid code because deficient linker cctools' as
#37846: gcc47 cannot compile valid code because deficient linker cctools' as ----------------------------------+-------------------------------- Reporter: wd11@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: MacPorts 2.1.3 Component: ports | Version: 2.1.2 Keywords: deficient dependency | Port: gcc47 ----------------------------------+-------------------------------- The gcc groups of compiler ports (gcc47 etc) depend on cctools' for the linker 'as'. However, that linker is deficient: it doesn't know about the AVX instruction set supported by Intel's sandy-bridge and ivy-bridge processors, which are used in the recent mac books. As a consequence, gcc cannot compile valid code, such as the attached c++ program (note: compile with the -march=native option on a intel corei7 chip) Note that this is a known issue (http://stackoverflow.com/questions/9840207/how-to-use-avx-pclmulqdq-on- mac-os-x-lion), but the suggested solution is extremely inelegant and does not mesh well with macports updates. Instead, this problem should solved at its heart, i.e. by shipping the gcc ports with a better linker (or by convincing cctools to ship a useful linker). -- Ticket URL: <https://trac.macports.org/ticket/37846> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37846: gcc47 cannot compile valid code because deficient linker cctools' as ---------------------+-------------------------------- Reporter: wd11@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: gcc47 | ---------------------+-------------------------------- Changes (by ryandesign@…): * cc: jeremyhu@…, mww@… (added) * keywords: deficient dependency => * milestone: MacPorts 2.1.3 => -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37846: gcc47 cannot compile valid code because deficient linker cctools' as ----------------------+------------------------ Reporter: wd11@… | Owner: jeremyhu@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools | ----------------------+------------------------ Changes (by jeremyhu@…): * cc: jeremyhu@… (removed) * owner: macports-tickets@… => jeremyhu@… * port: gcc47 => cctools -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37846: gcc47 cannot compile valid code because deficient linker cctools' as ----------------------+------------------------ Reporter: wd11@… | Owner: jeremyhu@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools | ----------------------+------------------------ Comment (by jeremyhu@…): as is not a linker. It's an assembler. ld is the linker and is provided by ld64. -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#37846: cctools as does not support AVX ----------------------+------------------------ Reporter: wd11@… | Owner: jeremyhu@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools | ----------------------+------------------------ -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X
#37846: cctools as does not support AVX, consider using llvm ----------------------+------------------------ Reporter: wd11@… | Owner: jeremyhu@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools | ----------------------+------------------------ Comment (by jeremyhu@…): We should consider using 'clang -c -x assembler' instead of as... -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X
#37846: cctools as does not support AVX, consider using llvm --------------------------+------------------- Reporter: wd11@… | Owner: mww@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools gcc | --------------------------+------------------- Changes (by jeremyhu@…): * owner: jeremyhu@… => mww@… * port: cctools => cctools gcc -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:8> MacPorts <http://www.macports.org/> Ports system for OS X
#37846: cctools as does not support AVX, consider using llvm --------------------------+------------------- Reporter: wd11@… | Owner: mww@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools gcc | --------------------------+------------------- Comment (by jeremyhu@…): IMO, this is a gcc problem to work out. If the assembler doesn't support an instruction set, it shouldn't be used. gcc should either not use these instruction sets or should use llvm's assembler. -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X
#37846: cctools as does not support AVX, consider using llvm --------------------------+------------------- Reporter: wd11@… | Owner: mww@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.2 Resolution: | Keywords: Port: cctools gcc | --------------------------+------------------- Comment (by egall@…): Replying to [comment:9 jeremyhu@…]:
IMO, this is a gcc problem to work out. If the assembler doesn't support an instruction set, it shouldn't be used. gcc should either not use these instruction sets or should use llvm's assembler.
You're referring to the gcc '''port'''(s) here, right? I see no reason why gcc upstream would want to use the assembler of a competing compiler; they would probably just recommend that we update the binutils port and us the `as` that it provides instead... -- Ticket URL: <https://trac.macports.org/ticket/37846#comment:10> MacPorts <http://www.macports.org/> Ports system for OS X
participants (1)
-
MacPorts