Skip to content

Commit d115cb0

Browse files
committed
Fixed another bug in code generation.
1 parent 99c47a8 commit d115cb0

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

kernel_tuner/utils/directives.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -535,6 +535,11 @@ def allocate_signature_memory(data: dict, preprocessor: list = None, user_dimens
535535

536536
return args
537537

538+
def add_new_line(line: str) -> str:
539+
"""Adds the new line character to the end of the line if not present"""
540+
if line.rfind("\n") != len(line) - 1:
541+
return line + "\n"
542+
return line
538543

539544
def add_present_openacc(
540545
code: str, langs: Code, data: dict, preprocessor: list = None, user_dimensions: dict = None
@@ -560,8 +565,7 @@ def add_present_openacc(
560565
elif is_fortran(langs.language):
561566
present_clause += add_present_openacc_fortran(name, size)
562567
new_body += new_line + present_clause.rstrip() + "\n"
563-
if new_body.rfind("\n") != len(new_body) - 1:
564-
new_body += "\n"
568+
new_body = add_new_line(new_body)
565569
return new_body
566570

567571

test/utils/test_directives.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,6 @@ def test_add_present_openacc():
318318
assert add_present_openacc(code_f90, acc_f90, data, preprocessor, None) == expected_f90
319319
code_f90 = "!$acc parallel async num_workers(16) copy(array(:42))\n"
320320
assert add_present_openacc(code_f90, acc_f90, data, preprocessor, None) == code_f90
321-
code_cxx = "#pragma acc parallel num_gangs(32)\n\t#pragma acc loop\n\t//for loop"
322-
expected_cxx = "#pragma acc parallel num_gangs(32) present(array[:42])\n\t#pragma acc loop\n\t//for loop"
321+
code_cxx = "#pragma acc parallel num_gangs(32)\n\t#pragma acc loop\n\t//for loop\n"
322+
expected_cxx = "#pragma acc parallel num_gangs(32) present(array[:42])\n\t#pragma acc loop\n\t//for loop\n"
323323
assert add_present_openacc(code_cxx, acc_cxx, data, preprocessor, None) == expected_cxx

0 commit comments

Comments
 (0)