const char *rndrm99_get_description(void) {
  return "Create a directory named rndrm99_test_dir_pid, where "
         "pid is the process id.  Within that directory, "
         "randomly create and remove "
         "a number of sub-directories and small files, "
         "but do more creates than removes. "
         "When the total size of all sub-directories and files "
         "is greater than the size specified by the size parameter, "
         "start to do more removes than creates. "
         "The size parameter is given by the -z or --size option, "
         "otherwise it defaults to 1000000. "
         "A size of zero fills the file system until there is no "
         "space left. "
         "The task repeats, sleeping in between each iteration. "
         "The repeat count is set by the -n or --repeat option, "
         "otherwise it defaults to 1. "
         "A repeat count of zero repeats forever. "
         "The sleep value is given by the -p or --sleep option, "
         "otherwise it defaults to 0. "
         "Sleep is specified in milliseconds.";
}


x86 assembly (clang, -O0):
<rndrm99_get_description>:
push   %rbp
mov    %rsp,%rbp
lea    0xef5(%rip),%rax
pop    %rbp
ret

x86 assembly (clang, -O2):
<rndrm99_get_description>:
lea    0xef9(%rip),%rax
ret

LLVM IR (-O0):
@.str = [807 x i8] c"Create a directory named rndrm99_test_dir_pid, where pid is the process id. Within that directory, randomly create and remove a number of sub-directories and small files, but do more creates than removes. When the total size of all sub-directories and files is greater than the size specified by the size parameter, start to do more removes than creates. The size parameter is given by the -z or --size option, otherwise it defaults to 1000000. A size of zero fills the file system until there is no space left. The task repeats, sleeping in between each iteration. The repeat count is set by the -n or --repeat option, otherwise it defaults to 1. A repeat count of zero repeats forever. The sleep value is given by the -p or --sleep option, otherwise it defaults to 0. Sleep is specified in milliseconds.\00"
define i8* @rndrm99_get_description() {
ret i8* getelementptr inbounds ([807 x i8], [807 x i8]* @.str, i64 0, i64 0)
}

LLVM IR (-O2):
@.str = [807 x i8] c"Create a directory named rndrm99_test_dir_pid, where pid is the process id. Within that directory, randomly create and remove a number of sub-directories and small files, but do more creates than removes. When the total size of all sub-directories and files is greater than the size specified by the size parameter, start to do more removes than creates. The size parameter is given by the -z or --size option, otherwise it defaults to 1000000. A size of zero fills the file system until there is no space left. The task repeats, sleeping in between each iteration. The repeat count is set by the -n or --repeat option, otherwise it defaults to 1. A repeat count of zero repeats forever. The sleep value is given by the -p or --sleep option, otherwise it defaults to 0. Sleep is specified in milliseconds.\00"
define i8* @rndrm99_get_description() {
ret i8* getelementptr inbounds ([807 x i8], [807 x i8]* @.str, i64 0, i64 0)
}