similar to: How to force unused external routine declaration into object

Displaying 20 results from an estimated 7000 matches similar to: "How to force unused external routine declaration into object"

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
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
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
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
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
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.
2018 Jan 19
1
Exception handling support for a target
I think it's valuable to have precise / asynchronous unwind information without adding support for non-call exceptions. Profilers and debuggers need to be able to unwind the stack from arbitrary instruction boundaries, but they don't need to run exception handlers. We can still declare that outside the model. Speaking of which, barring bugs, we do support precise unwind info on Win64.
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
2016 Oct 11
4
Port to other Operating Systems
Hello all, Pardon me if this has already been covered elsewhere, however I have not been able to find such documentation. Is there a consolidated set of documentation that clearly explains what's necessary to port LLVM to other OSes & how to add support for building executables (& libraries) for those OSes? I'm searching through the source in an attempt to understand what needs to
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
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
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
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