Displaying 20 results from an estimated 20000 matches similar to: "Port to other Operating Systems"
2016 Oct 11
2
Port to other Operating Systems
As part of our port of OpenVMS to x86-64, we are using LLVM with our own frontends on OpenVMS Itanium. We are writing a converter between our old backend's IR and the LLVM IR. We can cross-compile (hosted on OpenVMS Itanium) and link/execute on x86-64 CentOS. At present, we pass over 88% of our C test suite.
Porting starts with being able to compile the code. Since we are stuck with a
2015 Jan 14
6
[LLVMdev] Introduction for new consumer of LLVM
Hello,
I'd like to introduce myself, my company, and our upcoming use of LLVM.
My name is John Reagan. I've been working on compilers and assemblers since
1983 (yes, 31 years). Most of that time was spent on compilers for VAX/VMS
(later renamed to OpenVMS), then OpenVMS on Alpha, and OpenVMS on Itanium.
I've also worked with the HP NonStop platform and was directly involved
2017 Dec 14
2
x86-64 unwind additions
Hi all,
We're at the point in our port of OpenVMS to x86-64 that we're working
on the unwind code. The current ABI and the current codebase doesn't
have enough support for true asynchronous unwinding from any point (most
notably in the prologue/epilogue) in the code that OpenVMS needs. We're
working on a set of changes to the compact unwind information to handle
the additional
2016 May 02
5
[cfe-dev] Fwd: Raising CMake minimum version to 3.4.3
As one of the OS' without current CMake support, I'm closely watching this discussion. We currently have LLVM 3.4.2 hosted on OpenVMS Itanium (as a host only, x86 target) using configure/make with little hassle. We plan to port CMake to OpenVMS, but that has been trickier than you'd think (others have tried, I haven't found anybody who has done it). Looks like I'll want to
2019 Jun 13
2
[RFC] Coding Standards: "prefer `int` for, regular arithmetic, use `unsigned` only for bitmask and when you, intend to rely on wrapping behavior."
Yes. We currently build LLVM 3.4.2 on our OpenVMS Itanium box with an
older EDG/Intel C++03 compiler to create legacy cross-compilers to our
OpenVMS x86 box (well, VirtualBox). We do have a few tweaks to the
relocations to access static data always through the GOT (including
CodeGen's static data). Our linker sees references to code (which might
be in 64-bit space) and creates trampolines
2019 Jun 14
2
[RFC] Coding Standards: "prefer `int` for, regular arithmetic, use `unsigned` only for bitmask and when you, intend to rely on wrapping behavior."
> -----Original Message-----
> From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of JF
> Bastien via llvm-dev
> Sent: Thursday, June 13, 2019 12:25 PM
> To: John Reagan
> Cc: llvm-dev at lists.llvm.org
> Subject: Re: [llvm-dev] [RFC] Coding Standards: "prefer `int` for, regular
> arithmetic, use `unsigned` only for bitmask and when you, intend to
2016 May 03
2
[cfe-dev] Fwd: Raising CMake minimum version to 3.4.3
I'm not sure if they are doing an x86 to IA64 cross compile, but in
any event I'm going to guess they may need an ancient version to avoid
any C++11 dependencies. In terms of IA64 compilers you have afaik 3
choices HP compiler, Open64 and Intel? (Does gcc still support it and
how up-to-date or EOL is the Intel compiler IA64 support?)
I really hope nobody decides not to move to a more
2016 May 19
4
Automake Assembler Assumptions with LLVM-MC
On Wed, May 18, 2016 at 01:10:50PM +0000, Daniel Sanders via llvm-dev wrote:
> It's my understanding that llvm-mc is intended to be a testing tool
> for LLVM developers rather than an assembler for end users. Users
> should be assembling with clang.
Not all LLVM users are clang users. For example, we're using LLVM to build
OpenVMS cross-compilers to x86 for our porting effort.
2015 Nov 09
4
[RFC] Deprecating autoconf: Let's do it!
As somebody who's currently hosting LLVM on a platform (OpenVMS Itanium) that has configure but not a working CMake (we're working to fix that but there are some tricky issues), I would appreciate if you didn't scrub the existence of configure from the source or the documentation. Perhaps keep pointers to the older pages and link to them from the downloads pages or something with an
2020 May 08
2
How to force unused external routine declaration into object
I had thought about "used", but not aware of the @llvm.used, et al.
I wrote some test programs with __attribute__((used)) but that felt like
something you'd put on function definitions to force code to be
generated regardless.
In the worst case, I'll do some metadata hack (I've ready had to do that
for BLISS' GLOBAL BIND feature).
Thanks for the response. I'll let
2018 Mar 14
2
Capturing x86 %rax in prologue to use in body
As part of our OpenVMS-specific changes, we're adding an arg-count to
all of our calls.
We've done this as part of callLowering to put the # of slots used into
%ah and leaving %al to hold the standard info about vector registers.
That part is working.
However, we're struggling somewhat on the code in the prologue to
capture the %ah value to then be obtained by our
2019 Jun 12
2
[RFC] Coding Standards: "prefer `int` for, regular arithmetic, use `unsigned` only for bitmask and when you, intend to rely on wrapping behavior."
On Tue, Jun 11, 2019 at 12:26 PM Michael Kruse <llvmdev at meinersbur.de>
wrote:
vector.size() returns a size_t, which on 64-bit platforms can represent
types values larger than those that can fit into an int64_t. So to turn
your argument around, since it's theoretically possible to have a vector
with more items than an int64_t can represent, isn't it already worth it
to use
2020 May 07
2
How to force unused external routine declaration into object
I'm defining an external function in the IR that has no uses at all. No
calls, no address taken, nada.
Such an unused declaration seems to be just dropped on the floor as not
needed. Seems reasonable in most cases.
However, one of my OpenVMS compilers (BLISS) has a language rule that
expects such definitions to get into the ELF symbol table as a way to
compel the linker to include certain
2019 Mar 29
2
Proposal for O1/Og Optimization and Code Generation Pipeline
When I worked on the HPE NonStop compilers for x86 (we used Open64, not
LLVM), we adjusted our -O1 to make sure the source display didn't
"bounce around" based on feedback from users. We disabled any
optimization that would move things across statement boundaries. We
also disabled/de-tuned dead store since our DWARF location list support
was pretty basic and with the removed store,
2018 Aug 23
4
[DebugInfo] DIBuilder missing interface to generate DWARF info for packed_decimal basic type.
Hello Paul,
Thanks for the reply.
Yes, I am only looking for dwarf support at the moment and planning to support both PLI/COBOL decimal types. Also thanks for the suggestion, you are right as it is going to be rare cases, so it will be better to implement a separate subclass to avoid memory overhead for others.
>> (Somebody is actively working on scaled binary operations, although they
2019 Jul 22
2
[RFC] Changing X86 data layout for address spaces
Amy, when you say "implement MSVC's extensions", is that MSVC/LLVM or
are you going to add these to clang? OpenVMS has dual-sized pointers as
well and want to see them in clang. One of my engineers noticed that
address space 4 was a 32-bit pointer address space (or at least it used
to be). I haven't seen any formal discussion of that over in the cfe
dev list. I'm happy to
2019 Jul 28
2
[RFC] Changing X86 data layout for address spaces
That is basically what we do today to provide mixed sized pointers with
our legacy frontends. They generate IR to our old code generator which
has ADDR32 and ADDR64 datatypes. We use a 64-bit address data layout
and then typecast the 32-bit forms to/from the underlying 64-bit
addresses. I have been warned that such rampant typecasting might
interfere with certain optimizations or TBAA data. We
2018 Mar 14
0
Capturing x86 %rax in prologue to use in body
Hi John,
On 14 March 2018 at 18:28, John Reagan via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> However, we're struggling somewhat on the code in the prologue to
> capture the %ah value to then be obtained by our "arg_count" compiler
> builtin. We found where the 1st parameter is put into a virtual
> register in the event that it has to be passed back in %rax
2019 Jul 31
3
[RFC] Changing X86 data layout for address spaces
Please review the properties of an address space which are configurable
via the data layout. For example, bitwidth is one of those parameters.
If that parameter space covers your needs, then you do not need LLVM
side support.
Philip
On 7/30/19 2:59 PM, Amy Huang wrote:
> Thanks for the info--
> It seems like the way to do this is for clang to use address spaces to
> represent
2015 Nov 10
3
[RFC] Deprecating autoconf: Let's do it!
On 11/9/15 5:49 PM, John Reagan wrote:
> That would be fine with me. I just don't want some new visitor to
> come along and see "CMake only" and get discouraged and leave.
Well, it is going to be "CMake only". Anyone who depends on autotools is
going to be stuck on whatever the last revision is that we shipped with
it. And I really don't see it being feasible