1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-01 00:12:50 +01:00
llvm-mirror/test/Assembler/2007-09-29-GC.ll
Gordon Henriksen 5d201e0bcc Adding a collector name attribute to Function in the IR. These
methods are new to Function:

  bool hasCollector() const;
  const std::string &getCollector() const;
  void setCollector(const std::string &);
  void clearCollector();

The assembly representation is as such:

  define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to 
collector names, such that there is no overhead. A StringPool is 
further used to unique collector names, which are extremely
likely to be unique per process.

llvm-svn: 44769
2007-12-10 03:18:06 +00:00

13 lines
218 B
LLVM

; RUN: llvm-as < %s | llvm-dis | grep {@f.*gc.*shadowstack}
; RUN: llvm-as < %s | llvm-dis | grep {@g.*gc.*java}
define void @f() gc "shadowstack" {
entry:
ret void
}
define void @g() gc "java" {
entry:
ret void
}