Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#34498 closed enhancement (wontfix)

llvm-3.x should add a variant to enable additional targets beyond those used on Apple hardware

Reported by: Veence (Vincent) Owned by: jeremyhu (Jeremy Huddleston Sequoia)
Priority: Normal Milestone:
Component: ports Version: 2.1.0
Keywords: llvm Cc: jeremyhu (Jeremy Huddleston Sequoia)
Port: llvm-3.0, llvm-3.1

Description

The llvm-3.x ports as written today compile backends for a lot of targets (e.g.: MIPS, Alpha) which are totally useless on Apple hardware. Compiling those backends take a lot of time, and, on 2 GB machines, the final linking exceed the amount of available memory, which causes tons of swap and speed the building further down. I therefore suggest that, by default, llvm-3.x ports do only build "useful" backends (x86, x86_64, powerpc, arm) and that the other ones be left out except if the user chooses a dedicated variant (e.g. +alltargets).

Change History (4)

comment:1 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: wontfix
Status: newclosed

No. I don't want variant overload. The additional targets don't take that much time to compile.

The only reason for the arm_runtime variant in the clang ports is that I haven't gotten around to seeing if my recent changes allow it to build on external systems without the iOS SDK installed.

comment:2 in reply to:  1 Changed 12 years ago by Veence (Vincent)

Replying to jeremyhu@…:

No. I don't want variant overload. The additional targets don't take that much time to compile.

Well, I don’t know on which machine you’ve tried, but on mine (MacBook 2008, first Unibody model) with 2 GB, it takes a long time to compile all targets and then after two hours the final link was not completed. Suppressing unwanted targets restored normal behavior…

comment:3 Changed 12 years ago by jeremyhu (Jeremy Huddleston Sequoia)

That's because of ARMDisassembler.cpp taking ages to compile, which is a known bug. Even if we did have a variant for the "unwanted" architectures, I'd include arm in the "wanted" architectures.

comment:4 Changed 12 years ago by Veence (Vincent)

I’m not sure ARM was so problematic. But anyhow, you know the port better than I do. I made a private fork, and am happy with it. Cheers!

Note: See TracTickets for help on using tickets.