DaemonForums  

Go Back   DaemonForums > DaemonForums.org > News

News News regarding BSD and related.

Reply
 
Thread Tools Display Modes
Old 20th March 2014
ibara's Avatar
ibara ibara is offline
Shell Scout
 
Join Date: Jan 2014
Posts: 99
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by Oko View Post
LLVM (Clang is just a front end) and ACK (Amsterdam Compiler Tollkit) is even more paintful because these are abvously not the kind of compilers suitable for creating system binaries.
What are you talking about?
ACK is unsuitable for OpenBSD development. It doesn't support anywhere near enough architectures to be given a serious look.

LLVM on the other hand, *is* suitable for exactly what you claim it's not: creating system binaries.
It's almost like there are whole operating systems out there using LLVM for exactly that.
__________________
@bcallah on app.net
Reply With Quote
Old 20th March 2014
thirdm thirdm is offline
Package Pilot
 
Join Date: May 2009
Posts: 195
Thanked 3 Times in 3 Posts
Default

Quote:
Originally Posted by ibara View Post
What are you talking about?
ACK is unsuitable for OpenBSD development. It doesn't support anywhere near enough architectures to be given a serious look.

LLVM on the other hand, *is* suitable for exactly what you claim it's not: creating system binaries.
It's almost like there are whole operating systems out there using LLVM for exactly that.
Looking at wikipedia, LLVM does target a number of architectures, but I don't see VAX among them. VAX seems important to OpenBSD from what I've seen on mailing lists. A very valuable developer likes it seems like.
Reply With Quote
Old 20th March 2014
Carpetsmoker's Avatar
Carpetsmoker Carpetsmoker is offline
Real Name: Martin
Old man from scene 24
 
Join Date: Apr 2008
Location: Eindhoven, Netherlands
Posts: 2,062
Thanked 198 Times in 156 Posts
Default

Currently, OpenBSD uses 3 different GCC versions, depending on the architecture. Using Clang/LLVM only for the architectures where it's available, doesn't seem very far-fetched to me.
The current GCC version is closed to 6 years old. Obviously *something* needs to be done, sooner or later.

I also don't understand why Clang/LLVM wouldn't be `suitable for creating system binaries'? I've been using it for a bunch of years on my FreeBSD system, and it works pretty good.
There are a *few* programs that don't compile with either clang, mainly C++ stuff. The problem usually seems to sit in the libc++ library which differs from GCC's libstdc++, rather than the actual clang++ frontend.
I suspect most of these problems will be gone in a fairly short amount of time, though.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things.
Reply With Quote
Old 20th March 2014
ibara's Avatar
ibara ibara is offline
Shell Scout
 
Join Date: Jan 2014
Posts: 99
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by thirdm View Post
Looking at wikipedia, LLVM does target a number of architectures, but I don't see VAX among them. VAX seems important to OpenBSD from what I've seen on mailing lists. A very valuable developer likes it seems like.
This is a separate issue.
__________________
@bcallah on app.net
Reply With Quote
Old 20th March 2014
ibara's Avatar
ibara ibara is offline
Shell Scout
 
Join Date: Jan 2014
Posts: 99
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by Carpetsmoker View Post
Currently, OpenBSD uses 3 different GCC versions, depending on the architecture.
2 now: gcc-3.3.6 and gcc-4.2.1 (both with many local patches)
Vax was upgraded to gcc-3.3.6 a while back and gcc-2.95 was removed from the tree back in August:
http://marc.info/?l=openbsd-cvs&m=137581669314878&w=2
__________________
@bcallah on app.net
Reply With Quote
Old 20th March 2014
Oko's Avatar
Oko Oko is offline
Fsck Surgeon
 
Join Date: May 2008
Location: Kosovo, Serbia
Posts: 761
Thanked 36 Times in 32 Posts
Default

Quote:
Originally Posted by ibara View Post
What are you talking about?
ACK is unsuitable for OpenBSD development. It doesn't support anywhere near enough architectures to be given a serious look.
Have you actually bother to read my post carefully before blasting me off?
Reply With Quote
Old 20th March 2014
ibara's Avatar
ibara ibara is offline
Shell Scout
 
Join Date: Jan 2014
Posts: 99
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by Oko View Post
Have you actually bother to read my post carefully before blasting me off?
Yes, you claimed that ACK and LLVM were unsuitable for creating system binaries. That is doubly wrong: ACK is the compiler suite for Minix3 and LLVM is the compiler for FreeBSD, among others. You know, entire operating systems.
__________________
@bcallah on app.net
Reply With Quote
Old 20th March 2014
Oko's Avatar
Oko Oko is offline
Fsck Surgeon
 
Join Date: May 2008
Location: Kosovo, Serbia
Posts: 761
Thanked 36 Times in 32 Posts
Default

Quote:
Originally Posted by ibara View Post
Yes, you claimed that ACK and LLVM were unsuitable for creating system binaries. That is doubly wrong: ACK is the compiler suite for Minix3 and LLVM is the compiler for FreeBSD, among others. You know, entire operating systems.
Yes. Both compilers are NOT suitable for creating system binaries on OpenBSD.

ACK is retargetable compiler ported to very few architectures whose claim to fame include support for Pascal and Basic among other languages. Comparing Minix and OpenBSD is like comparing the airplane of Writh brothers with Boeing 787. From airspace engineering point of view Writh brothers got fluid dynamics and airodynamcis right. Still would you like to fly in their airplane to Europe?

LLVM is written in C++ (Just like GCC 4.8.2) that is pretty much where any discussion about LLVM as a system compiler for Unix-like system should end. Inspite of the fact that I use FreeBSD/FreeNAS at work I actually do not have high opinion about FreeBSD QA. If a modern file system like HAMMER 1 or 2 (when it gets written) gets ported to OpenBSD or if DragonFly BSD gets little more missing infrastructure for enterprise use I would stop using FreeBSD that very day.
Reply With Quote
Old 20th March 2014
ibara's Avatar
ibara ibara is offline
Shell Scout
 
Join Date: Jan 2014
Posts: 99
Thanked 0 Times in 0 Posts
Default

Quote:
Originally Posted by Oko View Post
Both compilers are NOT suitable for creating system binaries on OpenBSD.
This statement is wrong. I'm sorry, but it is. There is no other way to say it.
__________________
@bcallah on app.net
Reply With Quote
Old 20th March 2014
thirdm thirdm is offline
Package Pilot
 
Join Date: May 2009
Posts: 195
Thanked 3 Times in 3 Posts
Default

Quote:
Originally Posted by Oko View Post
LLVM is written in C++ (Just like GCC 4.8.2) that is pretty much where any discussion about LLVM as a system compiler for Unix-like system should end.
Why? Both compilers are C++ now, so unless OpenBSD wants to maintain the pre-C++ gcc itself forever, what's it going to do other than take a C++ gcc or a C++ Clang? Clang/llvm can compile its own source code now, so there's no bootstrapping issue (or at least no impossible bootstrapping issue -- I don't doubt changing compilers would be a pita).

It's not like gcc or Clang can't still compile C, so what does OpenBSD care if either is implemented in C++? Some people seem to have serious problems with GPL 3, which I don't understand either but... well, feel free to ignore this sentence, this side of the debate, this probably isn't the place and I'm not the person for it. (I should probably try to get Hurd going and be done pretending to be a BSD person but OpenBSD is just too good.)
Reply With Quote
Old 27th March 2014
backrow backrow is offline
Real Name: Anthony J. Bentley
Shell Scout
 
Join Date: Jul 2009
Location: Albuquerque, NM
Posts: 116
Thanked 10 Times in 4 Posts
Default

Quote:
Originally Posted by thirdm View Post
It's not like gcc or Clang can't still compile C, so what does OpenBSD care if either is implemented in C++?
Well, it does make a difference to the developers. Maintainability is important, and C++ brings certain negative associations to mind, at least in some people.

It’s a shame that PCC is dead, since it has some promise. Initially it was pushed as a compiler that is easy to port to new architectures, but in the end nobody stepped up to do the work beyond i386. Still, it’s not the first time OpenBSD has considered a compiler and dropped it. Theo even considered the Plan 9 compiler once, but dropped that idea for licensing reasons.

I foresee the BSD world, including OpenBSD, moving (eventually) to clang. A compiler written in C++, with a very large codebase that takes a long time to compile and uses up all my diskspace when building itself with debug symbols doesn’t seem ideal to me—but I can’t deny how useful I’ve found clang in real‐world usage.

Personally, I find libFirm/cparser an interesting lightweight compiler project, although the fact that it’s GPL is somewhat irritating.
__________________
Many thanks to the forum regulars who put time and effort into helping others solve their problems.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
pkg_add_it - new version DNAeon FreeBSD Ports and Packages 5 14th November 2010 01:43 AM
Ports Version associated with FreeBSD version rtwingfield FreeBSD Ports and Packages 4 7th June 2010 11:00 PM
LLVM milestone reached - Clang compiler self-hosts J65nko News 0 5th February 2010 03:48 PM
pop3d: Maximum connection limit reached for ... kheled FreeBSD General 1 25th June 2008 05:16 PM
How I can have two version of zsh mfaridi FreeBSD Ports and Packages 7 15th May 2008 05:56 PM


All times are GMT. The time now is 02:54 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content copyright © 2007-2010, the authors
Daemon image copyright ©1988, Marshall Kirk McKusick